C语言习题Word格式.docx
- 文档编号:20652982
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:20
- 大小:23.26KB
C语言习题Word格式.docx
《C语言习题Word格式.docx》由会员分享,可在线阅读,更多相关《C语言习题Word格式.docx(20页珍藏版)》请在冰豆网上搜索。
B)C语言只能在固定的操作系统上运行。
C)C语言不包含依赖硬件的输入/输出语句,其输入/输出功能语句需要手工来编写。
D)C语言允许对位、字节、地址这些计算机功能中的基本成分进行操作。
15.当用户用编辑器将C语言程序录入到计算机后,就建立一个源文件,则(C)
A)源文件可以直接被计算机执行
B)源文件需要编译后就可执行
C)源文件经过编译链接后生成的可执行程序和源程序是独立的
D)错误调试一般在执行过程进行
16.下列说法中正确的是(B)
A.由于C源程序是高级语言程序,因此一定要在VC++软件中输入
B.由于C源程序是字符组成,因此可以作为文本文件在任何文本编辑的软件中输入
C.由于C程序是高级语言程序,因此输入后即可执行
D.由于C程序是高级语言程序,因此它由命令组成
17.下列说法中错误的是(D)
A.主函数可以分为两个部分:
主函数说明部分和主函数体
B.主函数可以调用任何非主函数的其它函数
C.任何非主函数可以调用其它任何非主函数
D.程序可以从任何非主函数开始执行
作业二C基本数据类型及运算
1.下列不正确的C语言用户标识符是__A__。
A)intB)a_1_2C)ab1exeD)_x
2.下列正确的C语言标识符是__B__。
A)#defineB)_123C)%dD)\n
3.下列四组字符串中都可以用作C语言程序标识符的一组是_A___。
A)print__123Pxqstr_l
B)_3done_halfMy->
bookCpp
C)oodbstart$itline#pow
D)aBc3paiHis.agewhile
4.下面各选项组中,均是C语言关键字的组是__B__。
A)auto,enum,includeB)switch,typedef,continue
C)signed,union,scanfD)if,struct,type
5.下列不属于C语言关键字的是__D__。
A)defaultB)registerC)enumD)external
6.执行语句printf("
%x"
-1);
屏幕显示__D__。
A)-1B)1C)-ffffD)ffffffff
7.已知inta=2,b=1,c;
执行语句c=b/a+2.5后,c的值_D_。
A)2.5B)3C)3.0D)2
8.有关变量已经定义,以下合法的数值表达式是__C__。
A)a=1/b=2B)++(a+b)C)b=b/(a=6)D)c=int(a)+b
9.将字符g赋给字符变量c,正确的表达式是__C__。
A)c=\147B)c="
\147"
C)c='
\147'
D)c='
0147'
10.下列转义字符中错误的一个是__C__。
A)'
\000'
B)'
\014'
C)'
\x111'
D)'
\2'
11.将空格符赋给字符变量c,正确的赋值语句是_D___。
A)c='
\0'
B)c=NULLC)c=0D)c=32
12.已知:
chara='
\70'
;
则变量a中。
(A)
A)包含1个字符B)包含2个字符
C)包含3个字符D)说明非法
13.字符串"
\"
EOF\n=-\61\"
"
的长度是__B__。
A)8B)9C)14D)非法字符串
14.字符串"
的长度是__A__。
A)0B)1C)2D)非法字符串
15.已知:
chara;
intb;
floatc;
doubled;
执行语句"
c=a+b+c+d;
后,变量c的数据类型是。
(C)
A)intB)charC)floatD)double
16.逗号表达式"
(a=3*5,a*4),a+15"
的值是__C__。
A)15B)60C)30D)不确定
17.如果inta=1,b=2,c=3,d=4;
则条件表达式a<
b?
a:
c<
d?
c:
d的值是__A__。
A)1B)2C)3D)4
18.已知inti=10;
表达式"
20-5<
=i<
=9"
的值是__B__。
A)0B)1C)19D)20
19.已知intx=1,y;
执行下述语句后变量x的值是_B___。
y=++x>
5&
&
++x<
10;
A)1B)2C)3D)4
20.为判断字符变量c的值不是数字也不是字母时,应采用下述表达式_D___。
A)c<
=48||c>
=57&
=65||c>
=90&
=97||c>
=122
B)!
(c<
=122)
C)c>
=48&
=57||c>
=65&
=90||c>
=97&
D)!
(c>
21.已知intx=5,y=5,z=5;
执行语句x%=y+z;
后,x的值是_C___。
A)0B)1C)5D)6
作业三输入与输出
1.设a=3,b=4,执行“printf(“a=%d,B=%d"
a,b);
”的输出是(C)
A.a=3,b=4B.3,4C.a=3,B=4D.a=3B=4
2.设a=1234,b=12,c=34执行“printf(“|%3d%3d%-3d|\n”,a,b,c);
”的输出是(A)
A.|12341234|
B.|1231234|
C.|123412-34|
D.|2341234|
3.使用“scanf(“x=%f,y=%f”,&
x,&
y);
”,要使x,y均为1.25,正确的输入是(C)
A.1.25,1.25
B.1.251.25
C.x=1.25,y=1.25
D.x=1.25y=1.25
4.要使doublex;
longa;
获得数据,正确的输入语句是(D)
A.scanf(“%d,%f”,&
a,&
x);
B.scanf(“%f,%ld”,&
a);
C.scanf(“%d,%lf”,&
D.scanf(“%ld,%lf”,&
5.设有inta=255,b=8;
则printf(“%x,%o\n”,a,b);
的输出的是(B)
A.255,8B.ff,10C.0xff,010D.输出格式错
6.设a、b为字符型变量,执行“scanf(“a=%c,b=%c”,&
b);
”后使a为’A’,b为’B’,从键盘上的正确输入是(D)
A.‘A’’B’B.‘A’,’B’C.A=A,B=BD.a=A,b=B
7.语句printf(“%f%%”,1.0/3);
的输出结果为:
(B)
(注:
%%的输出结果是一个%)
A.0.333333B.0.333333%
C.0.333333%%D.出错
8.已有定义intx;
floaty;
且执行scanf("
%3d%f"
&
输入数据为12345678<
回车>
则x和y的值为:
(A)
A.12345.000000B.123678.000000
C.12345678.000000C.345678.000000
9.有如下的定义和输入语句:
inta1,a2;
charc1,c2;
scanf("
%d%d"
a1,&
a2);
%c%c"
c1,&
c2);
若要求a1,a2,c1,c2的值分别为10、20、A和B,则正确的数据输入方式为(D)
A.1020ABB.1020<
CR>
AB<
C.1020AB<
D.1020AB<
10.已有定义:
floatf1,f2;
程序运行时输入数据为4.523.5,则输入语句正确的为(B)
A.scanf("
%f,%f"
f1,&
f2);
B.scanf("
%f%f"
C.scanf("
%f%f\n"
D.scanf("
%3f%f"
11.下列数据中属于“字符串常量”的是(A)
A.“a”B.{ABC}
C.’abc\0’D.’a’
12.在PC机中,‘\n’在内存占用的字节数是(A)
A.1B.2C.3D.4
13.在PC机中,“a\xff”在内存占用的字节数是(C)
A.5B.6C.3D.4
14.在C语言中,合法的长整型常数是(A)
A.0LB.4962710
C.0.054838743D.2.1869e10
15.下列数据中不属于“字符常量”的是(D)
A.‘\a’B.‘\160’
C.‘\070’D.070
作业四C程序控制结构
1.结构化程序设计的3种结构是(D)
A)顺序结构、选择结构、转移结构
B)分支结构、等价结构、循环结构
C)多分支结构、赋值结构、等价结构
D)顺序结构、选择结构、循环结构
2.已知
intt=0;
while(t=1)
{...}
则以下叙述正确的是(B)
A)循环控制表达式的值为0
B)循环控制表达式的值为1
C)循环控制表达式不合法
D)以上说法都不对
3.有如下程序:
main()
{
intx=1,a=0,b=0;
switch(x)
{
case0:
b++;
case1:
a++;
case2:
b++;
}
printf("
a=%d,b=%d\n"
}
该程序的输出结果是(A)
A)a=2,b=1
B)a=1,b=1
C)a=1,b=0
D)a=2,b=2
4.有以下程序
inti=1,j=1,k=2;
if((j++||k++)&
i++)
%d,%d,%d\n"
i,j,k);
执行后输出结果是(C)
A)1,1,2
B)2,2,1
C)2,2,2
D)2,2,3
5.有如下程序
floatx=2.0,y;
if(x<
0.0)
y=0.0;
elseif(x<
10.0)
y=1.0/x;
else
y=1.0;
%f\n"
y);
该程序的输出结果是(C)
A)0.000000
B)0.250000
C)0.500000
D)1.000000
6.有如下程序:
intn=9;
while(n>
6)
n--;
%d"
n);
该程序的输出结果是(B)
A)987
B)876
C)8765
D)9876
7.在下列选项中,没有构成死循环的是(D)
A)inti=100;
while
(1)
i=i%100+1;
if(i>
100)
break;
B)for(;
;
);
C)intk=10000;
do
k++;
}while(k>
10000);
D)ints=36;
while(s)
--s;
8.有如下程序段
#include"
stdio.h"
main()
inta=10,b=50,c=30;
a=a>
30?
1:
2;
b=b>
c=c>
a,b,c);
则执行结果为(A)
A)2,1,2
B)1,2,1
C)1,1,2
D)2,1,1
9.阅读如下程序段
#include"
inta=45,b=40,c=50,d;
d=a>
b:
c;
switch(d)
case30:
%d,"
a);
case40:
b);
case50:
c);
default:
#"
则输出的结果是(D)
A)40,50,
B)50,#
C)40,#
D)40,50,#
10.若有定义intk=10;
则下列程序的输出结果为(B)
do{
k--);
}while(!
k);
A)9
B)10
C)10987654321
D)没有输出
11.阅读下列程序段,则程序的输出结果是(B)
inta=10,b=10,k;
for(k=0;
a>
8;
b=++k)
%d,%d,"
a--,--b);
\n"
A)10,10,10,0,
B)10,9,9,0,
C)10,10,9,1,
D)9,9,9,1,
12.下列程序的运行结果是(B)
inta,b,m;
for(a=5;
=1;
a--)
m=0;
for(b=a;
b<
=5;
b++)
m=m+a*b;
%d\n"
m);
A)30
B)15
C)20
D)10
13.若inti,j;
,则for(i=j=0;
i<
10&
j<
i++,j+=3)控制的循环体执行的次数是(C)
B)8
C)3
D)2
14.下列程序的输出结果是(B)
inti=6;
while(i--)
--i);
A)531
B)420
C)654321
D)死循环
15.阅读下列程序,则执行结果是(C)
inta=0,b=0,c=0,i;
for(i=0;
4;
switch(i)
a=i++;
b=i++;
c=i++;
case3:
i++;
%d,%d,%d,%d\n"
a,b,c,i);
A)0,1,3,4
B)1,2,3,4
C)0,1,2,5
D)0,2,3,4
16.下面程序的运行结果是(A)
intj,i;
for(j=50;
=60;
j++)
for(i=2;
j;
if(!
(j%i))
if(i==j)
j);
A)5359
B)5953
C)3595
D)9535
17.已知charch='
C'
则以下表达式的值是(D)
ch=(ch>
='
A′&
ch<
Z′)?
(ch+32):
ch;
A)A
B)a
C)Z
D)c
18.下列程序的运行结果是(D)
intx=-9,y=5,z=8;
y)
if(y<
0)
z=0;
z+=1;
z);
A)6
B)7
C)8
D)9
19.现有定义intk=1;
则执行语句while(++k<
4);
后,k的值为(A)
A)4
B)5
C)6
D)8
20.以下程序的运行结果为(C)
intm,n;
for(m=0,n=10;
m<
n;
m+=3,n--);
%d,%d\n"
m,n);
A)6,7
B)7,6
C)9,7
D)7,9
作业五数组
1、若有以下数组说明,则数值最小和最大元素的下标分别是()。
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};
A.1,12B.0,11C.1,11D.0,12
2、若有以下数组说明,且i=10;
则a[a[i]]元素数值是()。
inta[12]={1,4,7,10,2,5,8,11,3,6,9,12};
A.10B.9C.6D.5
3、设有定义:
chars[12]={“string”};
,则
printf(“%d\n”,strlen(s));
的输出是()。
A.6B.7C.11D.12
4、以下对数组描述正确的是()。
A.数组一旦定义其大小是固定的,但数组元素的类型可以不同
B.数组一旦定义其大小是固定的,且数组元素的类型必须相同
C.数组一旦定义其大小是可变的,且数组元素的类型可以不同
D.数组一旦定义其大小是可变的,但数组元素的类型必须相同
5、以下叙述中错误的是()。
A.不可以用数组名对数组整体进行操作
B.数组名代表的是数组所占存储区的首地址,其值不可改变
C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息
D.可以通过赋初值的方式确定数组元素的个数
6、下列定义的字符数组中,printf(“%s\n”,str[2]);
语句的输出是()。
charstr[3][20]={“basic”,“foxpro”,“windows”};
A.basicB.foxproC.windowsD.输出语句出错
7、以下能正确将字符串“Boy”进行完整赋值操作的是()。
A.chars[3]={‘B’,‘o’‘y’};
B.chars[]=“Boy”;
C.chars[3]={“Boy”};
D.chars[3];
s[0]=‘B’;
s[1]=‘o’;
s[2]=‘y’;
8、定义:
chara[]="
China"
则数组a所占的空间为()。
A.4个字节B.5个字节C.6个字节D.7个字节
9、若有inta[4]={1,2,3,4};
,则a[a[0]+2*a[2]-a[3]]的值()。
A.1B.2C.3D.4
10、设变量定义为charformat[]=“s=%d\n”;
则
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题