您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > C语言习题及解答-2-1
C语言概述一.选择题1.下列选项中,合法的C语言关键字是A)VARB)cherC)integerD)default2.请选出可用作C语言用户标识符的一组标识符____A)VoiddefineWORDB)a3_b3_123IFC)For-abcCaseD)2aDosizeof3.C语言提供的合法的数据类型关键字是____A)DoubleB)shortC)integerD)Char4.在下列字符中,不可用作C语言标识符的是A)waterB)priceC)abD)a125.一下叙述正确的是A)C语言比其他高级高级B)C语言可以不用编译就能被计算机识别执行C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C语言出现的最晚、具有其他语言的一切优点6.在一个C语言程序中A)main函数必须出现在所有函数之前B)main函数可以在任何地方出现C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置7.下列符号不属于C语言保留字的是A)ifB)thenC)staticD)for8.下列说法正确的是A)主函数名main是由程序设计人员按照“标识符”的命名规则来选取的B)分号和回车符都可以作为语句的结束符号C)在程序清单的任何地方都可以插入一个或多个空格符号D)程序的执行总是从主函数main()开始的参考答案1.D2.B3.B4.C5.C6.B7.B8.D数据类型与表达式一.选择题1.下列字符序列中,不可用作C语言标识符的是()。A)abc123B)no.1C)_123_D)_ok2.正确的C语言标识符是()。A)_buy_2B)2_buyC)?_buyD)buy?3.请选出可用作C语言用户标识符的一组标识符()。A)voidB)a3_b3C)forD)2adefine_123-abcDOWORDIFcasesizeof4.下列符号中,不属于转义字符的是()。A)\\B)\0xAAC)\tD)\05.不属于C语言关键字的是()。A)intB)breakC)whileD)character8.以下选项中,合法的用户标识符是()。A)longB)_2abcC)3dmaxD)A)dat10.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\101'是()。A)字符AB)字符aC)字符cD)非法的常量12.以下选项中,正确的字符常量是()。A)FB)'\\''C)'W'D)''13.以下选项中可作为C语言合法整数的是A)10110BB)0386C)0XffaD)x2a214.下列变量定义中合法的是A)short_a=1-.le-1;B)doubleb=1+5e2.5;C)longdo=0xfdaL;D)float2_and=1-e-3;16.若有代数式cdab3,则不正确的C语言表达式是()。A)a/c/d*b*3B)3*a*b/c/dC)3*a*b/c*dD)a*b/d/c*320.在C语言中,要求运算数必须是整型的运算符是()。A)/B)++C)*=D)%21.若有说明语句:chars='\72';则变量s()。A)包含一个字符B)包含两个字符C)包含三个字符D)说明不合法,s的值不确定23.在C语言中,char型数据在内存中的存储形式是()。A)补码B)反码C)原码D)ASCII码26.设以下变量均为int类型,则值不等于7的表达式是()。A)(m=n=6,m+n,m+1)B)(m=n=6,m+n,n+1)C)(m=6,m+1,n=6,m+n)D)(m=6,m+1,n=m,n+1)27.假设所有变量均为整型,则表达式(x=2,y=5,y++,x+y)的值是()。A)7B)8C)6D)229.已知s是字符型变量,下面正确的赋值语句是()。A)s='abc';B)s='\08';C)s='\xde';D)s=\;30.若有以下定义,则正确的赋值语句是()。intx,y;floatz;A)x=1,y=2,B)x=y=100C)x++;D)x=int(z);31.设x、y均为float型变量,则不正确的赋值语句是()。A)++x;B)x*=y-2;C)y=(x%3)/10;D)x=y=0;33.putchar函数可以向终端输出一个()。A)整型变量表达式值。B)字符串C)实型变量值。D)字符或字符型变量值。34.以下程序段的输出结果是()。inta=12345;printf(%2d\n,a);A)12B)34C)12345D)提示出错、无结果36.以下说法正确的是()。A)输入项可以为一个实型常量,如scanf(%f,3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf(a=%d,b=5d);C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(%4.2f,&f);D)当输入数据时,必须指明变量的地址,如scanf(%f,&f);37.以下程序的执行结果是:()。#includestdio.hmain(){intx=2,y=3;printf(x=%%d,y=%%d\n,x,y);}A)x=%2,y=%3B)x=%%d,y=%%dC)x=2,y=3D)x=%d,y=%d38.以下程序的输出结果是()。(注:└┘代表空格)#includestdio.hmain(){printf(\nstring1=%15s*,programming);printf(\nstring2=%-5s*,boy);printf(string3=%2s*,girl);}A)string1=programming└┘└┘└┘└┘*B)string1=└┘└┘└┘└┘programming*string2=boy*string2=boy└┘└┘*string3=gi*string3=gi*C)string1=programming└┘└┘└┘└┘*D)string1=└┘└┘└┘└┘programming*string2=└┘└┘boy*string3=girl*string2=boy└┘└┘*string3=girl*39.阅读以下程序,当输入数据的形式为:12,34,正确的输出结果为()。#includestdio.hmain(){inta,b;scanf(%d%d,&a,&b);printf(a+b=%d\n,a+b);}A)a+b=46B)有语法错误C)a+b=12D)不确定值40.以下语句:temp=x;x=y;y=temp;的功能是()。A)把x,y,temp从小到大排列B)把x,y,temp从大到小排列C)交换x和yD)无确定的结果二.填空题1.在内存中要用_____7___个字节来存储字符串Double。2.字符0的十进制ASCII码值是48,则字符9的十进制ASCII码值是____57_____。3.字符型(char)数据在内存中是以其_________的形式存储的。4.8位无符号二进制数能够表示的最大十进制数是________。5.语句printf(a\bRe\'CH\'y\\\bou\n);的输出结果是_________。6.若有说明chars1=5;那么s1里包含___1_____个字符。7.十进制数125在一个字节的二进制表示是_________。8.C语言的关键字都用________{大写或小写}。9.C语言是通过_______来进行输入和输出的。11.以下程序的执行结果是________。#includestdio.hmain(){chars='b';printf(dec:%d,oct:%o,hex:%x,ASCII:%c\n,s,s,s,s);}13.以下程序的执行结果是:________。#includestdio.hmain(){charc='c'+5;printf(c=%c\n,c);}14.以下程序输入1└┘2└┘3后的执行结果是________。(注:└┘代表空格)#includestdio.hmain(){inti,j;chark;scanf(%d%c%d,&i,&k,&j);printf(i=%d,k=%c,j=%d\n,i,k,j);}15.有以下程序,若输入9876543210后的执行结果是________;若输入为:98└┘76└┘543210后的执行结果是________;若输入为:987654└┘3210后的执行结果为:________。(注:└┘代表空格)#includestdio.hmain(){intx1,x2;chary1,y2;scanf(%2d%3d%3c%c,&x1,&x2,&y1,&y2);printf(x1=%d,x2=%d,y1=%c,y2=%c\n,x,y);}16.若x和y均为int型变量,则以下语句的功能是________。x+=y;y=x-y;x-=y;17.有一输入函数scanf(%d,k);则不能使float类型变量k得到正确数值的原因是:________。18.有如下程序段,输入数据:12345ffl678后,u的值是【1】,v的值是【2】。intu;floatv;scanf(%3d%f,&u,&v);19.下面程序的运行结果是______。#includestdio.hvoidmain(){char='a';intk=-1;printf(%o%x%d\n,ch,ch,ch);printf(%d%u\n,k,k);}20.指出程序在执行过程中各个变量的变化情况#includestdio.hvoidmain(){intx=35;charch='b',c;floatf=3.5;c=x;/*__【1】_______*/x=f;/*___【2】_______*/f=c;/*___【3】_______*/f=x;/*___【4】_______*/}三.程序题1.阅读如下程序,给出输出结果。#includestdio.hmain(){charc1,c2;c1=97;c2=99;printf(%c\t%c\n,c1,c2);printf(%d\t&d\n,c1,c2);}2.阅读如下程序,给出输出结果。#includestdio.hmain(){intx;x=-8+5*3/6+9;printf(x=%d\t,x);x=15%7+3%5-8;printf(x=%d\t,x);x=-3*6/(4%6);printf(x=%d\n,x);}3.已知圆的周长为L,编写C程序,计算出它的面积。要求从键盘输入周长值,在屏幕上显示出相应的面积值。4.编写C程序,从键盘输入一个字符,在屏幕上显示出其前后相连的三个字符。5.编写程序,从键盘输入一个三角形的三条边长,在屏幕上显示出其面积值。6.编写一个C程序,统计出一个文本文件中逗号的个数。8.从键盘中输入3个正整数,输出它们的积。参考答案一.选择题1.B2.A3.B4.B5.D8.B10.A12.C13.C14.A16.C18.B20.D21.A23.D26.C27.B28.B29.C30.C31.C33.D34.C36.D37.D38.D39.D40.C二.填空题1.72.573.ASCII码值4.2555.Re'CH'you6.17.011111018.小写9.输入和输出函数11.dec:98,oct:142,hex:62,ASCII:b13.c=h14.i=1,k=└┘,j=215.第一种情况的执行结果:x1=98,x2=765,y1=4,y2=1第二种情况的执行结果:x1=98,x2=76,y1=└┘,y2=3第三种情况的执行结果:x1=98,x2=765,y1=4,y2=216.交换x和y的值17.(1)格式符应为:%f;(2)变量前边未加取地址符&,即应为scanf(%f,&k);18.【1】123【2】45.00000019.1416197-16553520.【1】#,【2】3,【3】35.0,【4】3.0。三.程序题1.ac97992.x=2x=4x=-43.#includestdio
本文标题:C语言习题及解答-2-1
链接地址:https://www.777doc.com/doc-4623745 .html