C语言期末复习题82427.docx

上传人:lao****ou 文档编号:126950 上传时间:2023-04-05 格式:DOCX 页数:25 大小:67.54KB
下载 相关 举报
C语言期末复习题82427.docx_第1页
第1页 / 共25页
C语言期末复习题82427.docx_第2页
第2页 / 共25页
C语言期末复习题82427.docx_第3页
第3页 / 共25页
C语言期末复习题82427.docx_第4页
第4页 / 共25页
C语言期末复习题82427.docx_第5页
第5页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C语言期末复习题82427.docx》由会员分享,可在线阅读,更多相关《C语言期末复习题82427.docx(25页珍藏版)》请在第一文库网上搜索。

1、C程序设计复习题一、单项选择题(请从4个备选答案中选择最适合的一项,每小题1分,共20分)1 .算法具有5个特性,以下选项中不属于算法特性的是()。A)有穷性 B)简洁性 0有效性 D)确定性2 .设有定义:float a=2, b=4, h=3;,其中a为梯形的上底,b为梯形的下底,h为梯形的高,以下C语言表达式不能计算出梯形面积的()A) (a+b)*h2 B)(1/2)*(a+b)*h C) (a+b)*h*l2 D) h2*(a+b)3 .经 int a=7; float x=2. 5, y=4.7;说明后,表达式 x+a%3*(int) (x+y)%24 的值是()。A) 2. 50

2、0000B) 2. 750000C) 3. 500000D) 0. 0000004.若t为double类型,表达式t=l,t+5, +t的值是A)lB)6.05.C)7.0若有以下定义和语句:int u=() 1 (),v=0x 10,w= 10;printf(%d,%d,%dn”,u,v,w);则输出结果是D)2.06.A)8,16,10B)10,10,10C)8,8,10以下选项中不合法的用户标识符是D)8,10,10A) 12B) abc7C) 2D) AS_88_mj7.若有以下定义和语句charcl=b,c2-eprintf(n%d,%cn,c2-c l,c2-,a,+nAn)j则输

3、出结果是A)2,MB)3,EC)2,ED)输出项与对应的格式控制不一致,输出结果不确定8 .若有以下定义:char s20=programmingH,*ps=s;则不能代表字符。的表达式是A)ps+2B)s2C)ps2D)ps+=2,*ps9 .设变量a为int, f为float, i为double,则表达式10+ a +i*f的数据类型是()。A) int 型 B) float 型 C) double 型 D)不确定10设a为int,不能正确表达数学关系:10a15的C语言表达式是()。A) 10a10 & a15D) !(a=15)11 .语句 for (x=0, y=0; (y! =12

4、3) & (x4); x+);循环()0A)是无限循环B)循环次数不定 C)执行4次 D)执行3次12 .下面的程序main() int a, b, s;scanf (/,%d%d, &a, &b);if(sb) s=b;s=s*s;printf(%dn,s);运行时,若从键盘输入3和2,则输出()。A) 14B) 16C) 18D)913 .若ij已定义为血类型,则以下程序段中内循环体的总的执行次数是for (i=5;i;i-)for(j=0y switch whileB) for while do-whileC) if while continueD)顺序结构、选择结构、循环结构17 .已

5、知 a=l, b=2, c=3, d=4,则表达式 ab?a:cd?a:d 的结果是A)4B)3C) 1D)2main() int a, b, s;scanf (%d, %dzz, &a, &b);s=a;if (ab) s=b;elses=s*s;printf (,/%dnz, s) ;A) 4B) 16C) 18D) 2019,若函数的类型和return语句中的表达式的类型不一致,则()。A)编译时出错B)运行时出现不正确的结果0不会出错,且返回值的类型以return语句中表达式的类型为准D)不会出错,且返回值的类型以函数类型为准20 .在C语言程序中,以下叙述正确的是()oA)函数的定义

6、和函数的调用均可以嵌套B)函数的定义可以嵌套,但函数的调用不能嵌套0函数的定义和函数的调用均不能嵌套D)函数的定义不能嵌套,但函数的调用可以嵌套21 .若用数组名作为函数调用的实参,则传递给形参的是()。A)数组的首地址B)数组的第一个元素的值0数组中全部元素的值D)数组元素的个数22 .在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是()。A)外部(extern) B)寄存器(register) C)自动(atuo) D)静态(static)23 .在下面一组运算符中,优先级最高的运算符是A) =B)=C) %D) &24 .有如下函数调

7、用语句func(rec 1 ,rec2+rec3,rec4);该函数调用语句中,含有的实参个数是A) 3B) 4C) 5D)有语法错25 .表示关系Xv=Yv=Z的c语言表达式为A) (X=Y)&(Y=Z)B) (X=Y)AND(Y=Z)C) (X=Y=Z)D) (X=Y)&(Y=Z)26 . C语言中,若未说明函数的类型,则系统默认该函数的类型是()。A) float 型 B) it 型 C) long 型 D) double 型27 .若定义数组int a34L,并以f(a)语句调用函数f,则在定义f函数时,对形参数组array错误的定义方式为()。A) f (it array 6)B)

8、f(int array3J)C) f (int array 4)D) f (int array2 5)28,下列一维数组初始化语句中,正确的是()。A) int a5=0, 2, 0, 3, 5; B) it a5=o;D) int a5 = 5*2 ;D) int a = (0, 2, 0, 3, 7);29 .现要定义一个二维字符型数组c M N来存放字符串,China Tianjin 和Education,则常量M和N的合理取值应为()。A) 3 和 9B) 2 和 10C) 4 和 9D) 3 和 10D) c730.若有说明char c = N, a, n, K, a, i;则对其元

9、素的非法引用是()。A) c0B) c9-6C) c2*231 .在C语言中,运算对象必须是整型的运算符是A)*B) %C)D) !32 .设有以下宏定义:#define N 3#define Y(n) (N+l)*n)则执行语句:z=2 * (N+Y(5+l);后,z的值为A)出错B) 4233.以下结构体变量的字节数是struct student(int num;char name8;double score;union int class;char position10; category;stu;A) 18B) 30C)48D)54C) 28D) 3234.若有代数式并,则错误的表达式

10、是A) abc*eB) a*ecbC) a*ebcD)*eZ*c35.要将字符串str2连接到字符串strl后,应使用的函数是()。A) strcpy (strl,str2); B) strcat (str2, strl);C) strcat (strl, str2) ; D) strcmp(str2, strl);36 .若定义int a=8, b, *p=&b;则赋值语句p=&a执行后,结果为()。A) p同时指向a和b0 p指向b,而b取a的值37 .定义以下结构体类型B) p指向a,而不再指向bD) p指向a, a取b的值struct sint a;float f;m3;语句 prin

11、tf (z,%dz sizeof (m)的输出结果为()。A) 4B) 1238 .下面程序的输出是main()C) 18D)int x-32;printf(,/%cln,x=xl);A)100B) 16039 .不正确的转义字符是C) 120D)A) R018”B) VC) “xaa”64D) 40 .以下程序执行后sum的值是void main() int i 9 sum;for(i=l;i6;i+)sum+=i;printf(n%dn,sum);A)15B)14C)不确定D)二、程序填空题(每空1分)1 .以下程序调用readrec函数读入数据,把3名学生的学号、姓名、四门成绩以及平均分

12、放在一个结构体数组中,学生的学号、姓名和四门成绩由键盘输入,然后计算出平均分放在结构体对应的域中,调用writrec函数输出3名学生的记录。请填空。#includedefine N 3struct stud char num5,name10;int s|4|;int ave;st|N|;writrec(struct stud *s) int k,i;printf(numtnametmarkltmark2tmark3tmark4taven,)for(k=0;k3;k+,s+)for(i=0;i-);)readrec(struct stud *p) int i,j,sum;for(j=0;jnum);gets(p-name);for(i=0;i4;i+)scanfC%c,getchar();sum=0;for(i=0;isi;p-ave=sum/4:)main()(readrec(st);writrec(st);)2 .求 l!+3!+5!+7!+21!之和#include void main() float s, t;int n;s=0;t=l;for (n=l;n=21;n+)(t=t*n;if(n%2!=0)s+=t;printf( l!+3!+5!+7!+21!=%er , s);)问题,每行控制输出3 .用数组来处理求Fibonacci数列(即:1, 1,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 汇报材料

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服