C语言练习题免财富值下载.docx
- 文档编号:10982153
- 上传时间:2023-02-24
- 格式:DOCX
- 页数:98
- 大小:72.25KB
C语言练习题免财富值下载.docx
《C语言练习题免财富值下载.docx》由会员分享,可在线阅读,更多相关《C语言练习题免财富值下载.docx(98页珍藏版)》请在冰豆网上搜索。
C语言练习题免财富值下载
C语言练习题
第1、2、3章C语言入门
一、单项选择题
1.C语言源程序的基本单位是()
A.过程B.函数C.子程序D.标识符
2.C语言规定:
在一个源程序中,main函数的位置()
A.必须在最开始B.必须在系统调用的库函数的后面
C.可以任意D.必须在最后
3.一个C程序的执行是从()
A.本程序的main函数开始,到main函数结束
B.本程序的main函数开始,到本程序文件的最后一个函数结束
C.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
D.本程序的第一个函数开始,到本程序的main函数结束
4.C语言和数据定义的最后()
A.必须有一个句号B.必须有一个逗号
C.必须有一个分号D.无需任何标点符号
5.C语言的标识符的第一个字符()
A.必须为字母B.必须为下划线
C.必须为字母或下划线D.以是字母、数字和下划线中任一种字符
6.C语言中最简单的数据类型包括()
A.整型、实型、逻辑型B.整型、实型、字符型
B.整型、字符型、逻辑型D.整型、实型、字符型、逻辑型
7.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长的排列顺序为()
A.char C.char 8.以下选项中,均是不合法的用户标识符的选项是() A.AB.floatC.b-aD._123 p_01a0gototemp do_AintINT 9.以下选项中,均是合法的整型常量的选项是() A.160B.-0xcdfC.–018D.–0x48eg -0xffff017999-68 01112,4565e203f 10.以下选项中,均是正确的八进制数或十六进制数的选项是() A.–10B.0abcC.0010D.0a12 0x8f017-0x11-0x123 -0110xc0xf1-0xa 11.以下选项中,均是合法转义字符的选项是() A.'\"B.'\'C.'\018'D.'\\0' '\\''\017'‘\f''\101' '\n''\''''xab''xff' 12.Char型常量在内存中存放的是( ) A.ASCII代码值B.BCD代码值C.内码值D.十进制代码值 13.下面正确的字符常量是() A."C"B.'\\"C.'W'D." 14.下面不正确的字符串常量是( ) A."0"B.""C.'abc'D."12'12" 15.C语言中,运算对象必须是整型数的运算符是() A.\B.%C.%和\D.** 16.若有代数式 ,则不正确的C语言表达式是() A.a/b/c*e*3B.3*a*e/b/cC.3*a*e/b*cD.a*e/c/b*3 17.若有代数式|x3+log10x|,则正确的C语言表达式是( ) A.fabs(x^3+log(x))B.abs(pow(x,3)+log10(x)) C.abs(pow(x,3,0)+log(x))D.fabs(pow(x,3,0)+log10(x)) 18.设有说明: charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为() A.floatB.charC.intD.double 19.设变量n为float类型,m为int类型,则以下能实现将n中数值保留小数点后两位,第三位进行四舍五入运算的表达式是() A.n=(n*100+0.5)/100B.m=n*100+0.5,n=m/100.0 C.n=n*100+0.5/100.0D.n=(n/100+0.5)*100.0 20.设整型变量a为5,使b不为2的表达式是() A.b=a/2B.b=6-(--a)C.b=a%2D.b=a>3? 2: 1 21.若有以下定义,则能使值为3的表达式是() intk=7,x=12 A.x%=(k%=5)B.x%=(k-k%5)C.x%=k-k%5D.(x%=k)-(k%=5) 22.设以下变量均为整型,则值不为7的表达式是() A.(x=y=6,x+y,x+1)B.(x=y=6,x+y,y+1) C.(x=6,x+1,y=6,x+y)D.(y=6,y+1,x=y,x+1) 23.设有值均为5.0的单精度变量f,g,使f为10.0的表达式是() A.f+=gB.f-=g+5C.f*=g-15D.f/=g*10 24.设f为实型变量,下列表达式中不是逗号表达式的是() A.f=3,4,5B.f=(3,2,1,0)C.f>=3,f<2,0D.f=2,f=1 25.设a,b均为整型变量,下列表达式中不是赋值表达式的是() A.a=3,4,5B.a=3*2C.a=a&&bD.a=b=4 26.整型变量a,b,c的值分别为2,3,4,运算表达式”a*=16+(b++)-(++c)”后,a的值是(<1>),b的值是(<2>),c的值是(<3>) <1>A.31B.30C.29D.28 <2>A.2B.3C.4D.5 <3>A.–5B.–4C.5D.4 27.设有整型变量n1,n2,其值均为3,执行语句”n2=n1++,n2++,++n1;”后,n1的值是(<1>),n2的值是(<2>) A.3B.4C.5D.6 28.执行语句”x=(a=3,b=a--);”后,x,a,b的值依次是() A.3,3,2B.3,2,2C.3,2,3D.2,3,2 29.以下说法正确的是() A.输入项可以为一个实型常量,如scanf(“%f”,3.5); B.只有格式控制,没有输入项,也能进行正确输入,如scanf(“a-%d,b=%d”); C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(“%4.2f”,&f) D.当输入数据时,必须指明变量的地址,如scanf(“%f”,&f) 30.putchar函数可以向终端输出一个() A.实型变量值B.整型变量表达式值C.字符串D.字符或字符型变量值 31.下面输入语句正确的是() A.scanf(“a=b=%d”,&a,&b);B.scanf(“a=%d,b=%f”,&m,&f); C.scanf(“%3c”,c);D.scanf(“%5.2f”,&f) 32.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的输入方式是() inta1,a2;charc1,c2; scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2); A.10A└┘20B C.10A20B 33.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是() inta1,a2;charc1,c2; scanf(“%d%d”,&a1,&a2); scanf(“%c%c”,&c1,&c2); A.1020AB C.10└┘└┘20└┘└┘AB 34.已有定义intx;floaty;且执行语句scanf(“%3d%f”,&x,&y);语句时,从第一列开始输入数据12345└┘678 <1>A.12345B.123C.45D.345 <2>A.无定值B.45.000000C.678.000000D.123.000000 35.已有程序段和输入数据的形式,程序中输入语句的正确形式应当为 main() {inta;floatf; printf(“\inputnumber: ”); 输入语句 printf(“\nf=%f,a=%d\n”,f,a); } Inputnumber: 4.5└┘└┘2 A.scanf(“%d,%f”,&a,&f);B.scanf(“%f,%d”,&f,&a); C.scanf(“%d%f”,&a,&f);D.scanf(“%f%d”,&f,&a); 36.有输入语句: scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a,b,c的值依次为1,3,2,从键盘上输入数据的正确方式应当是() A.132 C.a=1└┘b=3└┘c=2 37.根据题目中已给出的数据输入形式和输出形式,程序中输入输出语句的正确内容为 main() {intx;floaty; printf(“enterx,y: ”); 输入语句 输出语句 } A.scanf(“%d%f”,&x,&y);B.scanf(“%d%f”,&x,&y); printf(“\nx+y=%4.2f”,x+y);printf(“\nx+y=%4.2f”,x+y); C.scanf(“%d%f”,&x,&y);D.scanf(“%d%3.1f”,&x,&y); printf(“\nx+y=%6.1f”,x+y);printf(“\nx+y=%4.2f”,x+y); 38.根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式 main() {charch1,ch2,ch3; 输入语句 printf(“%c%c%c”,ch1,ch2,ch3); } 输入形式ABC 输出形式AB A.scanf(“%c%c%c”,&ch1,&ch2,&ch3); B.scanf(“%c,%c,%c”,&ch1,&ch2,&ch3); C.scanf(“%c,%c”,&ch1,&ch2,&ch3); D.scanf(“%c%c”,&ch1,&ch2,&ch3); 39.下列程序执行后的输出结果是() main() {inta=1,b=1; a+=b+=1; {inta=10,b=10; a+=b+=10; printf(“b=%d”,b); } a*=a*=b*10;printf(“a=%2d\n”,a); } A.b=20a=180B.b=20a=36C.b=20a=3600D.b=20a溢出 40.printf函数中用到格式符%5s,如果字符串长度大于5,则输出按方式(<1>);如果字符串长度小于5,则输出按方式(<2>) A.左对齐输出该字符串,右补空格B.右对齐输出该字符串,左补空格 C.按字符串长从左到右全部输出D.输出错误信息 41.以下C程序的运行结果是() main() {inty=2456; printf(“y=%3o\n”,y); printf(“y=%8o\n”,y); printf(“y=%#8o\n”,y);} 42.指出下面不正确的赋值语句() A.a++;B.a==b;C.a+=bD.a=1,b=1 43.若有以下定义,则正确的赋值语句是() inta,b;floatx; A.a=1,b=2B.b++;c.a=b=5D.b=int(x) 44.设有说明: doubley=0.5,z=1.5;intx=10;则能够正确使用C语言库函数的赋值语句是() A.z=exp(y)+fabs(x);B.y=log10(y)+pow(y); C.z=sqrt(y-z);D.x=(int)(atan2((double)x,y)+exp(y-0.2)); 45.下列数据中,不属于常量的是() A.123LB.‘\012’C.“12.3L”D12.3L 46.设字符变量x的值是064,表达式“~x^x<<2&x”的值是() A.0333B.333C.0x333D.020 47.下列表达式中,不属于逗号表达式的是() A.a=b,cB.a,b=cC.a=(b,c)D.a,(b=c) 二、多项选择题 1.以下叙述正确的是() A.函数是C程序的基本单位 B.C程序的每行只能写一个语句 C.C语言本身没有输入输出语句 D.在C程序中,注释说明只能位于一条语句的后面 E.在对C程序进行编译过程,可发现注释中的拼写错误 2.以下叙述不正确的是() A.在C程序中,SUM和sum是两个不同的变量名 B.在C程序中,无论是整数还是实数,都能被准确无误的表示 C.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值 D.若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数 E.在C程序中,%是只能用于整型数运算的运算符 3.已知ch是字符型变量,下面正确的赋值语句是() A.ch=’y+9’;B.ch=’7’+’9’C.ch=7+9D.ch=’\xff’E.ch=’\08’ 三、填空题 1.C语言的双重性意指它具有______________的功能,又具有_____________的许多功能。 2.C语言程序的三种基本结构是_____________、______________、______________。 3.C语句分为__________语句、________语句、__________语句、___________语句、和____________语句五大类。 4.一个C程序中至少应包含_______函数,无论该函数在程序中的位置如何,C程序总是从该函数开始。 5.在C语言中,输入操作是由库函数____________完成的,输出是由库函数_________完成的。 6.C语言规定,标识符只能由___________________三种字符组成,且第一个字符必须为_______________。 7.C语言规定,对所有用到的变量要“先定义,后使用”。 这样做有______________、________________和_____________________三大好处。 8.C语言的实型可分为___________型(其类型说明符是__________)和_____型(其类型说明符是__________);整型变量的类型说明符有_______(整型)、_________(短整型)和_________(长整型)。 9.若有以下定义,则计算表达式y+=y-=m*=y后y的值是________。 Intm=5,y=2; 10.若a是int型变量时,则表达式(a=4*5,a*2),a+6的值为__________。 11.若有定义: intb=7;floata=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为________。 12.若所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为________。 13.若有定义: inte=1,f=4,g=2;floatm=10.5,n=4.0,k;则计算赋值表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后,k的值为________。 14.表达式8/4*(int)2.5/(int)(1.24*(3.7+2.3))值的数据类型为________。 15.下列语句执行后的输出结果是____________________________。 inta=3; printf(“%d%8.5s%8s”,a,”ThreeThird”,”third”); 16.以下程序的输出结果为_____________________________________。 main() {shortI; I=-4; printf(“\ni: dec=%d,oct=%o,hex=%x,unsigned=%u\n”,I,I,I,I); } 17.以下程序的输出结果为______________________________________。 main() {charc=’x’; printf(“c: dec=%d,oct=%o,hex=%x,,ASCII=%c\n”,c,c,c,c); } 18.以下程序的输出结果为________________________________________ _________________________________________ main() {inta=1,b=2,c=3; ++a;b+=++c; {intb=4,c=5; c=b*c;a+=b+=c; printf(“a1=%d,b1=%d,c1=%d\n”,a,b,c); } printf(“a2=%d,b2=%d,c2=%d\n”,a,b,c); } 19.假设变量a,b和c均为整型,以下语句借助中间变量t把a,b和c的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。 请填空: _______________;a=b; b=c;___________; 20.若变量a和b均为int型变量,则以下语句的功能是__________________________。 a+=b;b=a-b;a-=b; 21.以下printf中的”-“号的作用是_____________________。 该程序的输出结果是: #include main() {intx=12;doublea=3.1415926; printf(“%6d##\n”,x);printf(“%-6d##\n”,x); printf(“%14.101f##\n”,a);printf(“%-14.101f##\n”,a); } 22.给下列程序加上必要的注释。 main() {floatf;intd1,d2,d3; printf(“Enteranumber: ”);scanf(“%f”,&f); printf(“Enter3interger: ”);scanf(%d-%d-%d”,&d1,&d2,&d3); /*输入格式是_________________________________________________*/ printf(“f=%.2f\n”,f);/*输出格式是________________________________*/ printf(“d1=%-8dd2=%-7dd3=%-6d”,d1,d2,d3); /*输出格式是_________________________________________*/ printf(“%10s”,”End”); } 23.请给下列程序补上必要的语句和注释。 #definePI3.1416 main() {floatr,s; printf(“Enteranumber__r: ”; ____________________;/*_____________________________________*/ s=PI*r*r;/*_____________________________________*/ ____________________;/*_____________________________________*/ } C语言习题集第一、二章答案 1.B 2.C 3.A 4.C 5.C 6.B 7.A 8.C 9.A 10.C 11.A 12.A 13.C 14.C 15.B 16.C 17.D 18.D 19.B 20.C 21.D 22.C 23.A 24.B 25.A 26.a=28,b=4,c=5 27.C,B 28.C 29.D 30.D 31.B 32.A 33.D 34.BB 35.D 36.D 37.A 38.D 39.C 40.C、B 41.见下面 42.B 43.B 44.A/D 45.D 46.A 47.C 二、多项选择题 1.AC 2.BC 3.BCDE 注: 1.17题改为D)fabs(pow(x,3.0)+log10(x)) 2.37输入形式: enterx,y: 23.4 输出形式上x+y=5.40 3.41题运行结果: y=4630 y=4630(空5格) y=04630 三、填空题: 1.高级语言、低级语言 2.顺序、分支、循环 3.控制、函数调用、表达式、空、复合。 4.main() 5.scanf(),printf() 6.字母,数字,下划线,字母 7、保证程序中变量名使用正确;编译时为其分配相应单元;检查该变量所进行运算是否合法 8、单精度、float;双精度、double;int、short、long 9、-16 10、26 11、5.5 12、9 13、13.7 14、int 15.3Threethird 16i: dec=-4,oct=177774,hex=fffc,unsigned=65532 17c: dec=120,oct=170,hex=78,ASCII=x 18.t=ac=t 19.换两数 第4章程序控制 一、填空题 1.C语言中可以用来实现循环的四种语句是________________、__________________、_______________、____________________。 2.C语言程序的三种基本结构是____________、____________、________________。 3.C语言程序的三种逻辑运算符是________、________、_________。 为了避免嵌套的条件语句if–else的二义性,C语言规定else与__________if配对。 4.在C语言中,&作为双目运算符表示的是_____________而单目运算符表示的是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 练习题 财富 下载
![提示](https://static.bdocx.com/images/bang_tan.gif)