标签:
黑马程序员------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
四 简单构造数据类型
一 一维数组
01 一维数组的定义:
类型标识符 数组名[常量表达式]; 如:int a[10];其表示定义了一个名为a的整型数组,该数组共有10个元素,即10个整型变量,可以储存10个整型数据.
02 类型标识符表示数组个元素的数据类型,数组名是用户自定义的的标识符,还表示数组所占内存区域的首地址,常量表达式用方括号括起来,其值表示数组元素的个数,即数组长度.
03 C语言规定,数组的下标从0开始,如果定义了一个具有n个元素的数组,则其元素对应的下标为0~n-1
/* 已知一个班30名学生参加C语言考试,要求编写程序,输入每个学生的成绩,计算平均成绩,并输出所有学生的考试成绩和平均成绩 */ #include <stdio.h> int main() { float cscore[30]; float sum=0,average; int i; printf("请输入30个同学的成绩:\n"); for (i=0; i<30; i++) { printf("第%d个学生成绩\n",i+1); scanf("%f",&cscore[i]); sum = sum+cscore[i]; } average = sum/30; for (i=0; i<30; i++) { printf("第%d的成绩:%f\n",i+1,cscore[i]); printf("average=%f\n",average); } return 0; }
04 数组元素的引用形式:
数组名[下标]
引用时,下标可以是整型常量,也可以是被赋值的整型变量或整型表达式.
05 C语言允许在定义数组时对各元素指定初始值,称为数组的初始化.
如:int a[10]={0,1,2,3,4,5,6,7,8,9};
也可以只给部分数组元素赋值,系统会对其余元素赋以默认值,当元素为数值型数据时,默认为0,字符型数据时,默认为’\n’,
/* 提示用户输入5个学生的成绩,算出平均分并且输出 */ #include <stdio.h> void test(); int main() { int score[5]; int sum = 0; for (int i = 1; i<=5; i++) { printf("请输入第%d个学生的成绩:\n",i); scanf("%d",&score[i-1]); sum += score[i-1]; } printf("平均值为%f\n",sum/5.0); test(); return 0; } void test() { int ages[] = {4,58,78}; for (int i =1; i<=3; i++) { printf("ages[%d]的地址是%p\n",i-1,&ages[i-1]); } }
06 对全部数组元素赋值,可以不指定数组长度,其长度由初值个数自动确定
07 数组只有在初始化时才可以被整体赋值,使用时不可以整体赋值
/* int count = 5; int ages[count]; ages[0] = 1; ages[1] = 6; ages[2] = 8; // 错误写法 // 如果想在定义数组的同时进行初始化,数组元素个数必须是常量,或者不写 // int ages[count] = {10,11,12}; */ #include <stdio.h> int main() { int ages[]={10,4,5,8,78,}; int count = (sizeof(ages))/sizeof(int); for (int i = 0; i<count; i++) { printf("ages[%d]=%d\n",i,ages[i]); } return 0;
13-黑马程序员------C 语言学习笔记--- C语言一维数组
标签:
原文地址:http://www.cnblogs.com/iceshan/p/4492540.html