数组基础
// // main.c // 数组基础 // // Created by zhangxueming on 15/6/1. // Copyright (c) 2015年 zhangxueming. All rights reserved. // #include <stdio.h> //数组:一段命名的连续的内存空间 //int a[80]; //数据类型 + 数组名[数组长度];//数组长度是一个常量表达式 //数据类型:数组元素的数据类型,决定每个元素占用内存空间大小 //数组名:地址常量 //数组长度: 数组中元素的个数 //内存大小 = sizeof(a[0]) * length; //数组下标 //从0开始到n-1 a[0] ~~a[79] //int main(int argc, const char * argv[]) { // int a[10]={}; // printf("%p\n",a); // a[0]=12; // printf("a[0]=%d\n", a[0]); // printf("size = %ld\n", sizeof(a)); // // for(int i=0; i<10; i++) // { // printf("%p\n", &a[i]); // } // return 0; //} //数组的遍历 //int main(int argc, const char *argv[]) //{ // int a[5]={}; // for (int i=0; i<5; i++) { // scanf("%d", &a[i]); // } // // for (int i=0; i<5; i++) { // printf("%d ", a[i]); // } // printf("\n"); // return 0; //} //int main(int argc,const char *argv[]) //{ // int a[5]={}; // for (int i=0; i<5; i++) { // scanf("%d", &a[i]); // } // // for (int i=4; i>=0; i--) { // printf("%d ", a[i]); // } // // printf("\n"); // return 0; //} //求学生的平均成绩 //int main(int argc,const char *argv[]) //{ // int a[10]={}; // float sum =0; // for (int i=0; i<10; i++) { // scanf("%d", &a[i]); // sum+=a[i]; // } // printf("%.2f\n", sum/10); // // return 0; //} //内存不能越界访问 //int main(int argc, const char *argv[]) //{ // int a[10]={}; // for(int i=0; i<10; i++) // { // scanf("%d", &a[i]); // } // // for (int i=0; i<10; i++) { // printf("a[%d]=%d\n", i, a[i]); // } // printf("\n"); // return 0; //} //数组的初始化 //完全初始化化 //int main(int argc,const char *argv[]) //{ // int a[5]={1,2,3,4,5}; // for (int i=0; i<5; i++) { // printf("a[%d]=%d\n", i, a[i]); // } // return 0; //} //部分初始化 //int main(int argc,const char *argv[]) //{ // int a[5]={1,2}; // for (int i=0; i<5; i++) { // printf("%d ", a[i]); // } // printf("\n"); // return 0; //} //定义了数组之后, 数组中的初值是未定义的,所以为了防止影响后续的操作, 通常需要初始化 //数组初始化为0; //int main(int argc,const char *argv[]) //{ // //int a[10]={0}; // int a[10]={}; // for (int i=0; i<10; i++) { // printf("%d ", a[i]); // } // printf("\n"); // return 0; //} //输出斐波那契数列的前20项 // 1 1 2 3 5 8 13 21 34 55 89 .... // a[n]=a[n-1]+a[n-2] //int main(int argc, const char *argv[]) //{ // int a[20]={1,1}; // for (int i=2; i<20; i++) { // a[i]=a[i-1]+a[i-2]; // } // for (int i=0; i<20; i++) { // printf("a[%d]= %d\n", i, a[i]); // } // return 0; //} //选择初始化 //C99标准 //int main(int argc, const char *argv[]) //{ // int a[10]={1,2,[5]=10,11,12}; // for (int i=0; i<10; i++) { // printf("%d ", a[i]); // } // printf("\n"); // return 0; //} //数组的操作 //输入10个数据, 查找该数据中的最大数,并将其输出到屏幕上 //1 3 5 7 4 2 0 //int max = a[0] =1; //max<a[i] = 7 //max = a[i] // //int main(int argc,const char *argv[]) //{ // int a[10]; // int max; // for (int i=0; i<10; i++) { // scanf("%d", &a[i]); // } // max = a[0]; // for (int i=1; i<10; i++) { // if (max<a[i]) { // max = a[i]; // } // } // printf("max = %d\n", max); // // return 0; //} //插入一个数到排序好的数组中 //1 3 5 7 8 9 a[i+1] =a[i]; //0 //1 3 4 5 7 8 9 //4 //1 3 5 5 7 8 9 //int main(int argc, const char *argv[]) //{ // int a[7]; // int num; // for (int i=0; i<6; i++) { // scanf("%d", &a[i]); // } // scanf("%d", &num); // int i; // //移位 // for (i=5; i>=0; i--) { // if (num<a[i]) { // a[i+1]=a[i]; // } // else{ // break; // } // } // //插入值 // a[i+1]=num; // // for (int i = 0; i<7; i++) { // printf("%d ", a[i]); // } // printf("\n"); // return 0; //} //查找某个数值(返回第一次出现位置) int main(int argc,const char *argv[]) { int a[5]={}; for (int i=0; i<5; i++) { scanf("%d", &a[i]); } int num ; scanf("%d", &num); for (int i=0; i<5; i++) { if (num==a[i]) { printf("index = %d\n", i); break; } } return 0; }