C语言习题全集+答案.docx
- 文档编号:10095670
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:50
- 大小:27.59KB
C语言习题全集+答案.docx
《C语言习题全集+答案.docx》由会员分享,可在线阅读,更多相关《C语言习题全集+答案.docx(50页珍藏版)》请在冰豆网上搜索。
C语言习题全集+答案
第一单元程序设计和C语言
一、选择题
1.C语言的基本构成单位是:
。
A.函数B.函数和过程C.超文本过程D.子程序
2.一个C语言程序总是从开始执行。
A.主过程B.主函数C.子程序D.主程序
3.C语言的程序一行写不下时,可以。
A.用逗号换行B.用分号换行C.在任意一空格处换行D.用回车符换行
4.以下叙述不正确的是:
。
A.在C程序中,语句之间必须要用分号";"分隔
B.若a是实型变量,C程序中10是正确的,因为实型变量中允许存放整型数
C.在C程序中,无论是整数还是实数都能正确无误地表示
D.在C程序中,%是只能用于整数运算的运算符
5.以下不正确的C语言标识符是。
A.B.C.D.
6.下列字符串是标识符的是:
。
A.B.9C.D.1
7.以下说法中正确的是:
。
A.C语言程序总是从第一个定义的函数开始执行
B.在C语言程序中,要调用的函数必须放在()函数中定义
C.C语言程序总是从()函数开始执行
D.C语言程序中的()函数必须放在程序的开始部分
8.不合法的常量是:
。
A.‘\2’B.""C.‘3’D.‘\483’
9.已知各变量的类型说明如下,则以下不符合C语言语法的表达式是:
。
;
5;
1.422;
A.(-3)B.2C.(23)D.(4)*(3)
10.在C语言中,字符型数据在内存中以形式存放。
A.原码B.码C.反码D.码
11.若有定义:
7;2.5;4.7;
则表达式3*()()%2/4的值是:
。
A.2.500000B.2.750000C.3.500000D.0.000000
12.设有说明:
w;x;y;z;
则表达式w*值的数据类型为:
。
A.B.C.D.
13.以下是不正确的转义字符。
A.'\\'B.'\'C.'081'D.'\0'
14.若x为型变量,则执行以下语句后的值为。
6;*x;
A.36B.-60C.60D.-24
15.字符串"\\\"\"\\"的长度是。
A.11B.7C.5D.3
二、填空题
1.一个函数由两部分组成,它们是和。
2.一个C源程序至少包含一个,即。
3.设12;则表达式的值是。
4.表达式(3,6*a)和表达式3,6*a分别是表达式和表达式,两个表达式执行完的结果分别是和,x值分别是和。
5.在C语言中,实数有两种表示形式,即和。
6.在C语言中,运算符的优先级最小的是运算符。
第二单元顺序程序设计
一、选择题
1.若m为型变量,则执行以下语句后的输出为。
1234.123;
("8.3f\n");
("%10.3f\n");
A.1234.123B.1234.123C.1234.123D.-1234.123
1234.1231234.1231234.123001234.123
2.若均为型变量,则执行以下语句后的输出为。
((10)+5)-5;
("\n");
(010);
("\n");
A.101510B.101010
010001010
C.101510D.101010
101000100
3.若x是型变量是型变量,所用的调用语句格式为:
("");
则为了将数据10和66.6分别赋给x和y,正确的输入应是:
。
A.1066.6<回车>B.1066.6<回车>
C.10<回车>66.6<回车>D.10<回车>66.6<回车>
4.已知有变量定义:
c;用(“”);语句给a和c输入数据,使30存入a,字符‘b’存入c,则正确的输入是:
。
A.30’b’<回车>B.30b<回车>
C.30<回车>b<回车>D.30b<回车>
5.已知有变量定义:
a;要给a和x输入数据,正确的输入语句是。
若要输出a和x的值,正确的输出语句。
A.(“”);B.(“”);
(“”);(“”);
C.(“”);D.(“”);
(“”);(“”);
6.若有定义1,y;则以下的语句执行的结果是。
3/2;(“”);
A.2.500000B.2.5C.2.000000D.2
7.若a为整型变量,则以下语句。
2L;("\n");
A.赋值不合法B.输出为不确定的值C.输出值为-2D.输出值为2
二、读程序写结果
1.()
{;
("%2*2");
("\n");
}
执行时输入:
1234567
2.()
{40;
x*=3+2;
("");
x*4;
("");
}
3.()
{x;i;
3.6;()x;
("");
}
4.()
{2;
4-1;(",");
**=3;("");
}
5.()
{023;
("");
}
6.()
{c1=’6’2=’0’;
("\n"121212);
}
7.()
{;
1;1;
("\n");
;
("\n");
}
三、填空题
1.在C语言中,字符型数据和整型数据之间可以通用,一个字符数据既能以输出,也能以输出。
2.""表示如果串长小于m,则在m列范围内,字符串向靠,补空格。
3.函数的“格式控制”包括两部分,它们是和。
4.编写程序求矩形的面积和周长,矩形的长和宽由键盘输入,请填空。
<>
()
{;
(“\n”);
(“”);
;
;
}
5.编写程序,输入一个数字字符(‘0’~‘9’)存入变量c,把c转换成它所对应的整数存入n,如:
字符‘0’所对应的整数就是0。
请填空。
()
{c;
;
(“a:
\n”);
;
;
();
}
第三单元分支程序设计
一、选择题
1.若0,3,3,以下表达式值为0的是
A. 1: 0C.2D.3 2.以下运算符中优先级最低的运算符为,优先级最高的为。 A.B.! C.D.E.? : F. 3.若1234,则条件表达式w<<的结果为。 A.4B.3C.2D.1 4.若均为型变量,则执行以下语句后的输出为。 3710; ("\n">1010010); ("\n"); ("\n">z); ("\n"); A.0B.1C.0D.0 1111 1100 1110 5.分析以下程序,下列说法正确的是。 () {500; ()("****\n"); ("####\n"); } A.有语法错,不能通过编译B.通过编译,但不能连接 C.输出****D.输出#### 6.分析以下程序,下列说法正确的是。 () {503; ()("****\n"); ("####\n"); } A.有语法错,不能通过编译B.通过编译,但不能连接 C.输出****D.输出#### 7.分析以下程序,下列说法正确的是。 () {000; ()("****\n"); ("####\n"); } A.有语法错,不能通过编译B.通过编译,但不能连接 C.输出****D.输出#### 8.分析以下程序,下列说法正确的是。 () {000; ()("****\n"); ("####\n"); } A.有语法错,不能通过编译B.通过编译,但不能连接 C.输出****D.输出#### 二、读程序写结果 1.<> () {14; (<=0)(! (<=0)); ("\n"); } 2.() {40; x*=3+2; (""); x*=((4)); (""); } 3.() {; 3;4; ("",(x>>)? 1: 0); ("">y>); } 4.() {1110; (z<0) (y>0)3; 5; ("\t"); (<0)3; (0)5; 7; ("\t"); ("\t"); } 5.() {‘B’; (x) {‘A’: (“A.”); ‘B’: (“B.”); ‘C’: (“C.”); : (“.”); } } 6.() {1000; (x) {1: (y) {0: ; 1: ; } 2: ; 3: ; } ("\n"); } 三、填空题 1.若5,6,7,8,则表达式2的值为 2.定义10;执行后,变量x的值为。 3.分段函数: 输入x,计算y值,输出y,其中: x<023 00 x>0(7)/3 <> () { ; (""); (x<0) (1); (2)0; (3)(7)/3; (“”); } 4.由键盘输入三个数,计算以这三个数为边长的三角形面积。 (1) () { (2); ("3: \n"); (""); ((3)) {()*0.5; s1*()*()*(); (4); ("\\n"); } (5) ("! \n"); } 5.有一方程0的值由键盘输入,请编程序,打印出以下情况时方程的解。 (1)0≠0 (2)000 (3)00≠0 (4)a≠04≥0 (5)a≠04≤0 "" () {12; (""); ("\n"); (0) {( (1)) ("\n"); ( (2))("\n"); ("x\n"); } {*4*a*c; ((3)) {x1=((d))/(4); x2=((d))/(5); ("x16.2f,x26.2f\n"12); } {(2*a);(6); ("x16.2f6.2\n"); ("x26.2f6.2\n"); } } } 6.投票表决器: –输入Y、y,打印 –输入N、n,打印 –输入其他,打印 () { c; (""); (1) { ‘Y’: ‘y’: (“”); (2); ‘N’: ‘n’: (“”);(3); (4)(“”); } } 第四单元循环程序设计 一、选择题 1.程序段如下: 则以下说法中正确的是: A。 5; { ; }(k<=0); A.循环执行5次B.循环是无限循环 C.循环体语句一次也不执行D.循环体语句执行一次 2.设i和x都是类型,则循环语句B。 (00<=9876)(""); A.最多执行10次B.最多执行9次 C.是无限循环D.循环体一次也不执行 3.下述循环语句B。 ; (011)("****"); A.判断循环结束的条件非法B.是无限循环 C.只循环一次D.一次也不循环 4.程序段如下: 则以下说法中正确的是: C。 20; (0)1; A.循环执行20次B.循环是无限循环 C.循环体语句一次也不执行D.循环体语句执行一次 5.下列程序段执行后k值为A。 0; (0<5) (0<3) 1; A.15B.3C.5D.8 6.程序段如下: 则以下说法中不正确的是: D。 <> () { 2,; (k<7) { (2){3;(“\n”);} 1; (“\n”); } } A.3;执行一次B.1;执行2次 C.执行后k值为7D.循环体只执行一次 二、读程序写结果 1.() {0; (<=2) {;("\n");} } 1 1 3 2.() {00; {*2+1;("\n");;} (s<10); } 01 14 29 316 3.<> () {1; (5>=1) { (1)*2; ("\n"); } } 4 10 22 46 94 4.指出下面三个程序的功能,当输入为: "? "时,它们的执行结果是什么? ⑴<> () {c; (); ('? ') {(c);();} } ⑵<> () {c; ((())'? ')(); } ⑶<> () {((())'? '); } 5.<> () {i; (1<=5) { (2) (‘<’); ; (‘>’); } (‘#’); } 6.() {; (11<=100) {(b>10); (31) {3;;} } ("\n"); } 7.() {1; (i<=15) (32); (""); ("\n"); } 8.<> () {; (0<=3) {(0<) ("(),"); ("\n"); } } 9.() {; ''; (0<=5) {(1<)(""); (0<=5)("",'*'); ("\n"); } } 10.<> () {0; (11<=30) {(100) ("\n"); (2<) {(! ()); (i>1) {("\t");} } } } 三、填空题 1.语句只能用于语句和语句中。 2.计算2+4+6+898+100 () { i, (1); (2<=100; (2)) ; } 3.求满足下式的 XYZ +YZZ ────── 532 () {532; (1; (1)) (1; (2)) ((3);(4)) {(5)+(100*10*); ()(",,\n"); } } 4.求=之值,其中a是一个数字。 例如2+22+222+2222(此时n=4),n由键盘输入。 () {100; ("请输入a和n的值: \n"); (""); (<= (1)) { (2); (3); *10; (4); } ("\n"); } 5.一球从100米高度自由落下,每次落地后反跳回原来高度的一半,再落下,求它在第十次落地时,共经过多少米? 第十次反弹多高? () {100.02; n; (2<= (1)) { (2);(3);} ("第10次落地时共经过米\n"); ("第10次反弹米\n"); } 6.打印出以下图形 * *** ***** ******* ***** *** * () {; (0<= (1)) {(0<=2)(""); (0<= (2))("*"); (3) } (0<=2) {(0<=(4)) (""); (0<=(5)) ("*"); ("\n"); } } 7.准备客票。 某铁路线上共10个车站,问需要准备几种车票? () {0; ("输入车站数: "); (""); (1< (1)) ( (2)<) (3); ("车票种类\n"); } 第五单元数组 一、选择题 1.以下关于数组的描述正确的是。 A.数组的大小是固定的,但可以有不同的类型的数组元素。 B.数组的大小是可变的,但所有数组元素的类型必须相同。 C.数组的大小是固定的,但所有数组元素的类型必须相同。 D.数组的大小是可变的,但可以有不同的类型的数组元素。 2.在定义a[10];之后,对a的引用正确的是。 A.a[10]B.a[6.3]C.a(6)D.a[10-10] 3.以下能正确定义数组并正确赋初值的语句是。 A.5[n][n];B.a[1][2]={{1},{3}}; C.c[2][]={{1,2},{3,4}}D.a[3][2]={{1,2},{3,4}} 4.以下不能正确赋值的是。 A.s1[10]1="";B.s2[]={’t’,’e’,’s’,’t’} C.s3[20]="";D.s4[4]={’t’,’e’,’s’,’t’} 5.下面程序段运行时输出结果是。 s[18]="a! "; ("%.4s"); A.a! B.a! C.aD.格式描述不正确,没有确定输出 6.下面程序段运行时输出结果是。 s[12]="A"; ("\n"(s)); A.12B.8C.7D.6 7.在执行a[][3]={1,2,3,4,5,6};语句后,a[1][0]的值是。 A.4B.1C.2D.5 二、读程序写结果 1.<> () { a[8]={1,0,1,0,1,0,1,0}; (2<8) a[i]a[1]+a[2]; (0<8) (“%5d”[i]); } 2.<> () { b[6]={1.1,2.2,3.3,4.4,5.5,6.6}; i; [0]; (0<5) b[i][1]; b[5]; (0<6) (“%6.2f”[i]); } 3.<> () {p[7]={11,13,14,15,16,17,18}00; (i<7p[i]%2) {[i];;} ("\n"); } 4.() {a[3][3]={1,3,5,7,9,11,13,15,17}; 0; (0<3) (0<3) {a[i][j]; () [i][j]; } (""); } 5.() {a[4][4]; (0<4) (0<4) a[i][j]; (0<4) {(0<) ("%4d"[i][j]); ("\n"); } } 6.<> () {; s1[100]2[100]; ("1: \n");(s1); ("2: \n");(s2); 0; ((s1[i]2[i])(s1[i]'\0')) ; ((s1[i]'\0')(s2[i]'\0'))0; 1[i]2[i]; ("\n"); } 输入数据 7.() { [3][5]={"","",""}; ("\"\"\n"[1]); } 8.<> <> () { [10][80][80]; i; (0<10) ([i]); ([0]); (1<10) ((c)<([i])) ([i]); (c); } 三、填空题 1.构成数组的各个元素必须具有相同的。 2.下面的程序是输出数组中最大元素的下标(p表示最大元素的下标)。 () { s[]={13,09,8,520,3}; (00<8) (s[i]>s[p]); } 3.输入20个数,输出他们的平均值,输出与平均值之差的绝对值最小的数组元素。 <> () { a[20]0; ; (0<20) { (“”[i]); ; } (a[0]); [0]; (1<20) ((a[i]) { [i]; } } 4.输出行、列号之和为3的数组元素。 () {[4][3]={'A','a','f','c','B','d','e','b', 'C','g','f','D'}; ; (0; (1)) (0; (2)) {; ((3))("\n"[x][y]); } } 5.将一个数组中的元素按逆序重新存放。 例如原来的顺序为: 8,5,7,4,1,要求改为: 1,4,7,5,8。 N7 () {a[N]={12,9,16,5,7,2,1}; ("\n初始数组: \n"); (0<) ("%4d"[k]); (0< (1)) {[k];a[k]= (2);(3);} ("\n交换后的数组: \n"); (0;(4)) ("%4d"[k]); } 6.有一行文字,要求删去某一个字符。 此行文字和要删去的字符均由键盘输入,要删去的字符以字符形式输入(如输入a表示要删去所有的a字符)。 <> () {/*1表示原来的一行文字,2表示删除指定字符后的文字*/ 1[100]2[100]; ; 00; (“: \n”); (1); (""); (0; (2)) (1[i]) {2[(3)]1[i];;}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题 全集 答案