#include <stdio.h>
int main (void){
int a [20];//称a为20个元素的数组,每个元素都是int类型
//一次性声明了20个int类型变量
// a[0],a[1],...a[19];
a[0] = 9; a[1] = 10; //0和1是下标,下标也可以是表达式
a[3>2] = 10; a[3+2] = 10;//都可以
int i = 0, sum = 0;
while(i < 20){
scans("%d",a[i]);
i ++;
sum += a[i];
}
printf("%d",sum);
return 0;
}
int a[10];
a 是int[10]类型的;盖住a显示的就是a的类型;a是10个int元素的数组类型
printf("%ld %ld",sizeof(a),sizeof(a[10])); //40 40
a[0],a[1],a[2]...a[9]表示数组a的10个元素,数组是相同类型变量的集合
int a[10] = {1,2,3,4,5,6,7,8,9,10};//完全初始化了;还有下边的不完全初始化
int a[10] = {1,2,3};部分初始化,其他的值都是0
int j = -1;
while(i++ < 9){
printf("%d",a[i]);//1,2,3,0,0,0,0,0,0,0
}
int a[10] = {};//所有元素都是0;
数组的赋值
int a[5];//声明一个5个元素的数组
a = {1,2,3,4,5}//这样写错误,数组不能整体赋值,只能对每一个元素分别赋值
如果访问a[5],a[6];超出的打印是不确定的值,计算机中存的是连续的,可能访问到了其他的任何可能的值;
计算机会记第一个元素的地址开始;
网友评论