《国开《C语言程序设计》(形考任务二)试题及答案.docx》由会员分享,可在线阅读,更多相关《国开《C语言程序设计》(形考任务二)试题及答案.docx(14页珍藏版)》请在第一文库网上搜索。
1、一、选择题(共20分,每小题2分)试题1当处理特定问题时的循环次数已知时,通常采用的语句是()。选择一项:G a.forb.whilec.do-whiled.switch试题2在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写成的语句是()。选择一项:a.for* b.ifr c.do d.while试题3for语句能够被改写成的语句是()。选择一项:r a.复合b.ifc.switch* d.while试题4下面循环语句执行结束后输出的i值为()。for(int i=0; in/2) coutiendl; break;选择一项:ra.n/2b
2、.n/2 + 1c.n/2-1d.n-1试题5在下面循环语句中,内层循环体s语句的执行总次数为()。for(int i=0; in; i + +)for(int j=i; jn; j+) S;选择一项:r a.n2广 b.(n+l)/2C c.n(n-l)/26 d.n(n + l)/2试题6在下面的d。循环语句中,其循环体被执行的次数为()。int i=0; do i + +; while(i*i10);选择一项:何a,4b.3c.5r d.2试题7在下面的一维数组定义中,有语法错误的选项是()。选择一项:C a.inta=l/2,3);r b.int a10=0;c.int a;d.int
3、 a5;r试题8在下面的二维数组定义中,语法正确的选项是()。选择一项:a.int a5;C b.int a5; c.inta3=l/3,5/2;d.int a(10);试题9假定一个二维数组的定义语句为inta34=3,4,2,8,6;,则元素a的值为()。选择一项:a.2r b.4r c.6母d.8试题10假定一个二维数组的定义语句为inta34=3,4,2,8,6,则元素的值为()。选择一项:6 a.Ob.4C c.8d.6二、判断题(共20分,每小题1分。叙述正确则回答“是,否则回答否)试题11在执行typedef int DataType;语句后,标识符DataType与保留字int
4、具有完全相同的含义和作用。选择一项:6对r错试题12在switch语句中,每个case和冒号之间的表达式只能是常量。选择一项:才对r错试题13为了结束本层循环类语句或switch语句的执行过程,在语句体中需要使用break语句。选择一项:6对r错试题14在程序中执行到break语句时,将结束所在函数的执行过程,返回到调用该函数的位置。选择一项:对6错试题15在程序执行完成任一个函数调用后,将结束整个程序的执行过程,返回到操作系统或C语言集成开发环境界面窗口。选择一项:对6错试题16假定一维数组的定义为char* a8;则该数组所含元素的个数大于8。选择一项:对6错试题17假定二维数组的定义为i
5、nt a35;则该数组所占存储空间的字节数为60。选择一项:才对试题18假定二维数组的定义为char aMN;,则该数组所含元素的个数为M + N。选择一项:r对错试题19假定二维数组的定义为double aMN;则每个数组元素的行下标取值范围在0M-1之间。选择一项:才对r错试题20假定二维数组的定义为double aMN;则每个数组元素的列下标取值范围在。N之间。选择一项:对0错试题21存储一个空字符串需要占用0个字节的存储空间。选择一项:对6错试题22使用typedef char语句定义标识符BB为含有10行50列的二维字符数组类型。选择一项:6对r错试题23存储字符才需要占用1个字节的
6、存储空间。选择一项:才对1错试题24空字符串的长度为1。选择一项:对6错试题25字符串匕:xxk数据”的长度为13。选择一项:r对6错试题26为了存储一个长度为n的字符串,所使用的字符数组的长度至少为n+1。选择一项:才对r错试题27strcmp函数用于进行两个字符串之间的比较。选择一项:6对r错试题28strcpy函数用于把一个字符串拷贝到另一个字符数组空间中。选择一项:才对错试题29一个二维字符数组a1020能够最多存储9个字符串。选择一项:r对6错试题30一个二维字符数组a1020能够存储的每个字符串的长度不超过20o选择一项:r对6错三、填空题:写出下列每个程序运行后的输出结果(共40
7、分,每小题4分)试题31#includevoid main()(int x=5;switch(2*x-3) case 4: printf(%d ,x);case 7: printf(%d /2*x+l);case 10: printf(%d ,/3*x-l); break;default: printf(%s,defaultn);)11 14试题32#includevoid main() int ifs=0;for(i = l;i=5;i+) s+=i*i;printf(s=%dn,s);)田 a I s=55答案:I试题33#includevoid main() int i, sl=Oz s
8、2=0;for(i=0;i10;i + +)if(i%2) sl+ = i; else s2 + = i;printf(%d %dn,sl/s2);)I 25 20答案:I试题34#includevoid main() int n=6fy=l;whiley*=n-;printf(y=%dn/y);)答案:尸试题35#includeconst int M=20;void main()(int i,c2,c3,c5;c2=c3=c5=0;for(i = l; i = M; i + +) if(i%2=0) c2 + +;if(i%3=0) c3 + +;if(i%5=0) c5 + +;)prin
9、tf(%d %d %dn,c2/c3/c5);)- a I 10 6 4答案:试题36#includevoid main()(int i,s;for(i = l/s=0;i10;i+) if(i%3=0) continue;s+=i;)printf(dn”,s);)答案:尸试题37#includevoid main() int a8=12,39,26,41,55,63,72,40;int i, il=0, i2=0;for(i=0;i8;i + +)if(ai%2 = = l)il+; else i2+;printf(%d %dnJl/i2);)J 4 4一试题38#includeint a1
10、0=4,5,6,15,20,13,127,8,9;void main()(int i,s4=0;for(i=0; i10; i+) switch(ai%4) case 0: sO + =ai;break;case 1: sl + =ai;break;case 2: s2 + =ai;break;default: s3 +=ai;break;)for(i=0; i4; i + +) printf(%d ,si);I 44 27 6 22答案:试题39#includevoid main() char a = abcdbfbgacd;int il=Oz i2=0z i=O;while(ai) jf(
11、ai=a) il+;if(ai = = b) i2+;i + +;)printf(%d %d %dnJl/i2/i);)12 3 11答案:试题40#includevoid main() inta34=l/2,7z8/5,6/10/6)/9/12,3,4);int m=a00;int ij;for(i=0; i3; i + +)for(j=0; jm) m=aij;printf(dn”,m);)r2答案:四、简答题:根据下列每个题目要求编写程序(共20分,每小题4分)试题41编写一个函数,函数头格式为double Mean(double aMN,int m,int n)H,要求返回二维数组中所
12、有元素的平均值,假定在计算过程中采用变量v存放平均值。double Mean(double aMN,int m,int n)(int ij;double v=0.0;for(i=0; im; i +)for(j=0;jn;j+) v+=aij;v/=m*n;return v;)试题42编写一个递归函数int FF(int aQ, int n),求出数组a中所有n个元素之积并返回。int FF(int a, int n)(if(n= = l) return an-l;else return an-l*FF(a,n-l);)试题43编写一个主函数,利用while循环,求出并显示满足不等式的最小n值。#includevoid main()(int i=0; double s=0; /或 int i = l; double s=l;while(s5) s+=(double)l/+ + i;printf(n=%dn,i);)试题44编写一个主函数,求出满足不等式22+42+. +怦1000的最大n值,假定分别用i和s作为取偶数值和累加值的变量,并限定使用d。循环编程。#includevoid main()int i=0; 用i作为依次取值偶数的变量int s=0; 用s作为累加变量do i +=