C程序设计题库(含答案)

上传人:m**** 文档编号:506848127 上传时间:2022-12-19 格式:DOCX 页数:21 大小:45.33KB
返回 下载 相关 举报
C程序设计题库(含答案)_第1页
第1页 / 共21页
C程序设计题库(含答案)_第2页
第2页 / 共21页
C程序设计题库(含答案)_第3页
第3页 / 共21页
C程序设计题库(含答案)_第4页
第4页 / 共21页
C程序设计题库(含答案)_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《C程序设计题库(含答案)》由会员分享,可在线阅读,更多相关《C程序设计题库(含答案)(21页珍藏版)》请在金锄头文库上搜索。

1、C程序设计题库_单项选择题1. 基础知识1、以下说法中正确的是()A、C语言程序总是从第一个的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的mam()函数必须放在程序的开始部分 答案:C2、下列字符序列中,可用作C标识符的一组字符序列是()。A) S.b, sum, average _aboveB)class, day, lotus_I, 2dayC)#md, &12x, month, student_n!D) D56,name, _st_l答案:D3、以下标识符中,不能作为合法的C用户定义标识符的是()。

2、A) a3_b3 B) void C) _123 D) IF 答案:B4、设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)A、6.500000 E、6C、5.500000D、6.0000005、以下的选择中,正确的赋值语句是()。A) a=l.b=2 B) j+ C) a=b=5; D) y=int(x) 答案:c6、在C语言中,能代表逻辑值“真”的是()。A) Tme B) 大于0的数C) 非0整数D) 非0的数 答案:D7、卞列程序的输出结果是()。mauiQchar cl=97,c2=98;piintf(n%d %c,cl,c2);A)

3、97 98 B) 97 b C) a 98 D) a b答案:B8、执行下列语句后变量x和y的值是()。y=10;x=y+;A) x=10,y=10 B) x=ll,y=ll C) x=10,y=ll D) x=ll,y=10 答案:c9、设a=12,且a定义为整型变量。执行语句a+=a-=a*=a;后a的值为()。A) 12 B) 144 C) 0 D) 132 答案:C10、已知yea】为整型变量,不能使表达式(yea】4=0&yeai-%100!=0) |year%400=0 的值为“真”的数据是()。A) 1990 B) 1992 C) 1996 D) 2000 答案:A11、下列程序

4、的输出结果是()。mainQiiit 3=7,b=5;printfC%dn”,b=b/a);A) 0 B) 5 C) 1 D) 不确定值 答案:A12、以下关于运算符优先顺序的描述中正确的是()oA) 关系运算符 算术运算符 赋值运算符 逻辑运算符B) 逻辑运算符 关系运算符 算术运算符 赋值运算符C) 赋值运算符 逻辑运算符 关系运算符 算术运算符D) 算术运算符 关系运算符 赋值运算符 逻辑运算符答案:C13、已知i、j、k为int型变量,若从键盘输入:1, 2, 3回车,使1的值为l、j的 值为2、k的值为3,以下选项中正确的输入语句是()A、scanf(”2d%2d%2d”,&i,&j

5、,&k);B、scanf(”d%d%d”,&i,&j,&k);C、scanf(”d,%d,%d“,&i,&j,&k);D scanf(”i=%dj=%d、k=%d役&i,&j,&k);答案:c14有以下程序存include mainQ char cl,c2;cl=A+874;c2=A+875;pnntfCcdn5 1 ,c2);已知字母A的ASCH码为65,程序运行后的输出结果是()(A) E.68(B) D.69(C) E,D(D)输出无定值答案:A15、若有以下类型说明语句:char w; int x; float y; double z;则表达式w*x+z-y的结果类 型是()A、flo

6、atB、charC、intD、double答案:D16、关于局部变量,下列说法正确的是()。A、定义该变量的程序文件中的函数都可以访问。B、定义该变量的函数中的定义处以下的任何语句都可以访问。C、定义该变量的复合语句的定义处以下的任何语句都可以访问。D、局部变量可用于函数之间传递数据。答案:D17、若变量已正确说明为float类型,要通过语句scanf(”f %f %f ”,&a.&b,&c);给a赋于10.0, b赋予22.0, c赋予33.0,不正确的输入形式是:()B) 10.Q22.0,330 回车D) 10 22V 回车33回车A) 10v回车22 回车33回车C) 1O.OV 回车

7、 A22.0 33.0回车答案:B2. 三大结构(1) 下列程序的运行结果是(存include void mam()chai- cl = f6 c2 = O;printf(M%c,%c,%dn,c 1 ,c2,c 1 -c2);A因程序格式不合法,提示岀错信息B.6,0.6C. 6,0,7D.6Q5(2) 下列程序的运行结果是() 存include void mam()idouble x = 2.0, y;if(x0.0) y = 0.0;else if(x10.0) y = 1.0/x;else y = 1.0;pmitfC%fn”,y);A. 0.000000B.0.250000C.0.5

8、00000 D. 1.000000(3) 下列程序的运行结果是() 存include void mam()iint a = 2, b = -1, c = 2;if( b 0) c = 0;else c = c + 1;A. O B.l C.2 D.有语法错误(4) 卞列程序的运行结果是() 存include void mam()int a = 100:if( a 0) printff%diT, a 100); else piintfp%dn”,a = 100);A. O B.l C.100 D.-l(5) 卜列程序的运行结果是()祥include void mam()int x = 1, a

9、= 0, b = 0;switch(x)case 0: b = b + 1;case 1: a = a + 1;case 2: a = a + 1; b = b + 1;printf(Ma=%d.b=%d,n, a, b);A. a=2,b=lB.a=hb=l C.a=l,b=O D.a=2,b=23.函数1以下正确的函数定义形式是()。A. double fun(iiit xjnt y)E double fun(iiit x; int v)C double fun(iiit x, iiit y);D double fun(iiit x,y)2. C语言中,简单变量作为实参时,它和对应形参之间

10、的数据传递方式是()。A.地址传递B.单向值传递C.由实参传递给形参,再由形参传递给实参D.由用户指定传递方式3. 在C语言程序中以下正确的描述是()。A. 函数的定义可以嵌套,但函数的调用不可以嵌套B. 函数的定义不可以嵌套,但函数的调用可以嵌套C. 函数的定义和函数的调用均不可以嵌套D. 函数的定义和函数的调用均可以嵌套4. 若数组名作为函数调用的参数,则传递给形参的是()。A.数组的首地址B.数组第一个元素的值C.数组中全部元素的值D.数组元素的个数5. 若调用一个函数,且此函数中没有retum语句,则正确的说法是()。A.没有返回值E.返回若干个系统默认值C.能返回一个用户所希望的函数

11、值D.返回一个不确定的值6. 在C语言中,以下说法正确的是()。A. 实参和与其对应的形参各占用独立的存储单元B. 实参和与其对应的形参共占用一个存储单元C. 只有当实参与其对应的形参同名时才共占用存储单元D. 形参是虚拟的,不占用存储单元7. 以下正确的说法是()。A. 用户若需要调用标准库函数,调用前必须重新定义B. 用户可以重新定义标准库函数,如若此,该函数将失去原有定义C. 系统不允许用户重新定义标准库函数D. 用户若需要使用标准库函数,调用前不必使用预处理命令将该函数所在的头文件包 含编译,系统会自动调用。8. 以下不正确的说法是()。A. 实参可以是常量,变量或表达式B. 形参可以

12、是常量,变量或表达式C. 实参可以为任意类型D. 如果形参和实参的类型不一致,以形参类型为准9. C语言规定,函数返回值的类型是由()决定的。A. retum语句中的表达式类型B. 调用该函数时的主调函数类型C. 调用该函数时由系统临时D. 在定义函数时所指定的函数类型10. 以下正确的函数定义是(A. double fun(iiit x, iiit y) z=x+y; leturn z; C ftin (x、y)iiit x, y; double z;z=x+y leturn z )B. double fun(mt x.y)iiit z; return z D double fun (iii

13、t x, mt v) double z;z=x+y; return z 4.数组1. 在C语言中,引用数组元素时,其数组下标的数据类型允许是(C)A整型常量B整型表达式C整型常量或整型表达式D任何类型的表达式2. 对以下说明语句的正确理解是(E)mta10=6J.8.9J0;A将5个初值依次赋给al至a5B将5个初值依次赋给如0至a4C将5个初值依次赋给a6至a10D因为数组长度与数组个数不相同,所以此语句不正确3. 若有说明:mta34;则对a数组元素的非法引用是(D)Aa02*l Bal3 C a4-20 D a044. 若:mta34=0;则下面正确的叙述是(D)A只有元素a00可得到初

14、值0B此说明语句不正确C数组a中各元素都可得到初值,但其值不一定为0D数组a中每个元素均可得到初值05. 己有定义:char a=xyz,bn=*x,y,z;以下叙述中正确的是(C)A. 数组a和b的长度相同B. a数组长度小于b数组长度C. a数组长度人于b数组长度D. 上述说法都不对6. 若有定义语句:char s10=123456700,;,贝J sulen(s)的值是(A)。A. 7B. 8C. 9D. 107. 如下代码:intk, a3R=1,2,3,4,5,6,7,8,9;fbr(k=0: k3; k+)pmitfT%dS ak2-k);输出结果为(A)A 357 B 369 C 159 D 147 8判断字符串a和b是否相等,应当使用(D)A if(a=b) B if(a=b) 9有两个字符数组a、b,C if(stic

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号