《C语言复习题数组.pdf》由会员分享,可在线阅读,更多相关《C语言复习题数组.pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、C C 语言复习题语言复习题_ _数组数组一、填空一、填空1、若定义 char a =”3Love3”;则 strlen(a)的值为6,sizeof(a)的值为 7。2、若定义 char a =”Hello!n”;则 strlen(a)的值为 7,sizeof(a)的值为 8。二、选择二、选择1、设有数组定义:char array =China;则数组 array 所占的空间为(C)。A、4 个字节B、5 个字节C、6 个字节D、7 个字节2、为了判断两个字符串s1 和 s2 是否相等,应当使用(D)。A、if(s1=s2)B、if(s1=s2)C、if(strcpy(s1,s2)D、if(s
2、trcmp(sl,s2)=0)3、下列描述中,合法的数组定义是(D)。A、int a String”;B、int a50,1,2,3,4,5;C、char a”String”;D、char a 0,1,2,3,4,5;4、若有定义 int a10;,则对数组 a 的引用正确的是(D)。A、a10B、a6、3C、a(6)D、a10-105、以下对一维数组 a 的定义中正确的是(C)。A、chara(10);B、inta0、100;C、inta5;D、int k=10;int ak;6、以下对一维数组的定义中不正确的是(B)。A、double x5=2、0,4、0,6、0,8、0,10、0;B、i
3、nt y5=0,1,3,5,7,9;C、char ch1=1,2,3,4,5;D、char ch2=x10,xa,x8;7、假定一个 int 型变量占用四个字节,若有定义:int x10=0,2,4;则数组 x 在内存中所占字节数是(D).A、3B、6C、10D、408、若定义一个名为 s 且初值为123的字符数组,则下列定义错误的是(C)。A、char s=1,2,3,0 ;B、char s=123;C、char s=123n”;D、char s4=1,2,3;三、判断三、判断1、int a3定义了一个整型数组,它的 3 个元素是 a0,a1和 a2。T2、int a3定义了一个整型数组,它
4、的 3 个元素是 a1,a2和 a3。F3、在用字符数组来处理字符串时,应始终保证数组的长度大于字符串的实际长度。T4、可以在定义数组时只给一部分数组元素赋值。T5、对数组元素赋予的初值可以依次放在一对圆括号内。F四、写出以下程序的运行结果四、写出以下程序的运行结果1、include stdio.hint main()char s9=”12134211”;int v4=0,0,0,0,k,i;for(k=0;k9;k+)switch(sk)case 1:i=0;break;case 2:i=1;break;case 3:i=2;break;case 4:i=3;break;vi+;for(k=
5、0;kint main()int i,j,n=1,a12;for(i=0;i12;i+)ai=n;n+;n=0;for(i=0;i3;i+)for(j=1;j=4;j+)printf(%-4d,an);n+;printf(n”);return 0;答:3、include stdio。hint main()int i,j,k,n3;for(i=0;i3;i+)ni=0;k=2;for(i=0;ik;i+)for(j=0;jk;j+)nj=ni+1;printf(%dn,n1);return 0;答:3五、程序填空五、程序填空1、下列程序的功能是输入N 个实数,然后依次输出前 l 个实数和、前 2
6、 个实数和、前 N个实数和.填写程序中缺少的语句。#defineN10int main()float fN,sum=0.0;int i;for(i=0;iN;i+)scanf(%f,fi);for(i=1;i=N;i+);printf(”sum of NO%2d-%fn”,i,x);return 0;答:处应填写:sumsumfi-1;六、程序设计六、程序设计1、编写程序,从一整型数组 a 的第一个元素开始,每三个元素求和并将和值存入到另一数组中(最后一组可以不足3 个元素),最后输出所求的所有和值且每行输出5 个值.参考代码:#include define N20define MN/3+1i
7、nt main()int aN,i,j=0,bM=0;for(i=0;iN;i+)scanf(”%d,ai);for(i=0;iN;i+)bj=bj+ai;if((i+1)3=0)j+;if(N3=0)j-;for(i=0;i=j;i+)printf(”%d”,bi);if((i+1)%5=0)printf(”n);return 0;2、输入 10 个整型数存入一维数组,输出值和下标都为奇数的元素个数。参考代码:include stdio.hint main()int a10,i,num=0;printf(”enter array a:n);for(i=0;i10;i+)scanf(d,&ai);for(i=0;i10;i+)if(i2=1&ai2=1)num+;printf(”num=%dn,num);return 0;3、已知两个升序序列,将它们合并成一个升序序列并输出。参考代码:#include stdio。hint main()int a4=1,3,5,7;int b5=2,4,6,8,10;int c20,i=0,j=0,k=0;while(i4j5)if(aibj)ck+=ai+;elseck+=bj+;while(i4)ck+=ai+;while(j5)ck+=bj+;for(i=0;ik;i+)printf(”5d,ci);printf(”n);return 0;