程序填空:
1、将数组a中所有偶数删除,把奇数按原顺序依次存放到a[0]、a[1]、a[2]、……、中。例如:若a数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除偶数后a数组中的数据为:9、1、3、5、7。 #include
int a[9]={9,1,4,2,3,6,5,8,7},i,k=0; for(i=0;i<9;i++)
if(__【1】__) a[k++]=a[i]; for(i=k;i<9;i++) a[i]=0;
for(i=0;__【2】__;i++) printf(\ printf(\}
2、将所有大于1小于整数m的非素数存入数组a中。例如,若输入17,则应输出:4 6 8 9 10 12 14 15 16。 #include
int a[N],i,j,k=0,m; __【1】__
for(i=2;i for(j=2;__【2】__;j++) if(i%j==0) { __【3】__;break; } for(i=0;i 3、将斐波那契数列的前20项存放到数组fibonaci中,然后以每行5个数将其输出。该数组为:1、1、2、3、5、8、13、21、…… #include int fibonaci[N],i; for(i=0;i if(__【1】__) fibonaci[i]=1; else fibonaci[i]= __【2】__; for(i=0;i printf(\ if(__【3】__) printf(\ } } 4、逆置数组元素中的值。例如:若数组中的数据为:1、2、3、4、5、6、7、8、9,则逆置后依次为:9、8、7、6、5、4、3、2、1。 #include int a[9],i,j,t; for(i=0;i<9;i++) a[i]= __【1】__; for(i=0,j=8;i t=a[i];a[i]=a[j];a[j]=t; } for(i=0;i<9;i++) printf(\ printf(\} 5、将数组中的前半部分元素中的值与后半部分元素中的值对换。若数组元素个数为奇数,则中间的元素不动。例如:若数组中的数据为:1、2、3、4、5、6、7、8、9,则对换后依次为:6、7、8、9、5、1、2、3、4;若数组中的数据为:1、2、3、4、5、6、7、8、9、10,则对换后依次为:6、7、8、9、10、1、2、3、4、5。 #include int a[N],i,j,t,n; printf(\请输入数组元素个数:\ scanf(\ printf(\请输入数组中的%d个数据:\ for(i=0;i t=a[i];a[i]=a[j];a[j]=t; } for(i=0;i 6、删除数组中所有相同的数,使之只剩一个,然后输出剩下的数据。数组中的数已按由小到大的顺序排列。例如:若数组中的数据是: 2 2 2 3 4 4 5 5 6 6 6 6 7 7 8 9 9 10 10 10 删除后,数组中的内容应该是: 2 3 4 5 6 7 8 9 10。 #include main() { int a[N]={2,2,2,3,4,4,5,5,6,6,6,6,7,7,8,9,9,10,10,10},i,k; for(k=0,i=1; __【1】__;i++) { if(__【2】__) a[++k]=a[i]; } for(i=0; __【3】__;i++) printf(\ printf(\}