一、数组
例题1:接收键盘输入的100个整数,然后将他们按原顺序相反的顺序打出来。
如何存放这100个整数???定义100个变量?
通过数组来定义这100个数
一维数组:类型名 数组名[元素个数]
如:int a[100] 名字为a的数组,有100个元素,每个元素都是一个int 类型的变量。
a[0] | a[1] | a[2] | ...... | a[99] |
数组下标从0开始,N个元素的数组,下标从0到N-1
数组名a代表数组的地址,假设为p,则变量a[i]的地址就是p+i*sizeof(int)
#define NUM 100 //符号常量,便于修改
int a[NUM]; //数组一般不要定义在main里面,尤其是大数组
int main(){
for (int i=0;i<NUM;++i){
cin>>a[i];//scanf("%d",&a[i])
}
for (int i=NUM-1;i>=0;--i)
cout <<a[i]<<" ";
return 0;
}
二、筛法求n以内的素数
1)判断一个数n是不是素数,可以用2到根号n之间的所有整数去除n,看能否整除。如果都不能整除,那儿n是素数(慢)。
2)把2到n中所有的数都列出来,然后从2开始,先划掉n内所有2的倍数,然后每次从下一个剩下的数(必然是素数)开始,划掉其n内的所有倍数,最后剩下的数,就都是素数。
注意&#x