C语言习题及解答1021修改Word文件下载.docx
- 文档编号:5764971
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:163
- 大小:85.91KB
C语言习题及解答1021修改Word文件下载.docx
《C语言习题及解答1021修改Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言习题及解答1021修改Word文件下载.docx(163页珍藏版)》请在冰点文库上搜索。
3.C源程序的基本单位是。
4.一个C源程序至少应包括一个。
5.在一个C源程序中,注释部分两侧的分界符分别为和。
6.C语言源程序文件的后缀是______,经过编译后,生成文件的后缀是______,经过连接后,生成文件的后缀是______。
7.用高级语言编写的程序称为,必须将其翻译成二进制程序后才能执行。
翻译有两种方式,一种是通过翻译一句执行一句的方式执行,另一种通过一次翻译产生目标程序,然后执行。
三.简答题
1.简述C语言的特点。
2.简述C语言的应用。
3.简述编写C语言程序的流程。
第2章基本语法——语言描述与
数据存储的简单方法
一.选择题
1.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 。
A)必须为字母B)必须为下划线
C)必须为字母或下划线D)可以是字母、数字和下划线中任一种字符
2.若以下选项中的变量已正确定义,则正确的赋值语句是。
A)x1=26.8%3;
B)1+2=x2;
C)x3=0x12;
D)x4=1+2=3;
3.设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是。
A)x=x*100+0.5/100.0B)x=(x*100+0.5)/100.0
C)x=(int)(x*100+0.5)/100.0D)x=(x/100+0.5)*100.0
4.下列C语言中运算对象必须是整型的运算符是。
A)%=B)/C)=D)*=
5.若有以下程序段:
intc1=1,c2=2,c3;
c3=1.0/c2*c1;
则执行后,c3中的值是。
A)0B)0.5C)1D)2
6.设x和y均为int型变量,则以下语句:
x+=y;
y=x-y;
x-=y;
的功能是。
A)把x和y按从大到小排列B)把x和y按从小到大排列
C)无确定结果D)交换x和y中的值
7.下列变量定义中合法的是。
A)short_a=1-.le-1;
B)doubleb=1+5e2.5;
C)longdo=0xfdaL;
D)float2_and=1-e-3;
8.若变量已正确定义并赋值,符合C语言语法的表达式是。
A)a=b=7B)a=7+b+c,a++
C)int(12.3%4)D)a=a+7=c+b
9.若有floatx;
则sizeof(x)和sizeof(float)两种描述。
A)都正确B)都不正确C)前者正确D)后者正确
10.有整型变量x,单精度变量y=5.5,表达式x=(float)(y*3+((int)y)%4)执行后,x的值为()。
A)17B)17.500000C)17.5D)16
11.已知floatx=1,y;
则y=++x*++x的结果是。
A)y=9B)y=6C)y=1D)表达式是错误的
12.下列关于单目运算符++、--的叙述中正确的是。
A)它们的运算对象可以是任何变量和常量
B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量
C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量
D)它们的运算对象可以是char型变量、int型变量和float型变量
13.已定义ch为字符型变量,下列赋值语句中错误的是。
A)ch='
\'
;
B)ch=62+3;
C)ch=NULL;
D)ch='
\xaa'
14.假定有以下变量定义,则能使值为3的表达式是。
intk=7,x=12;
A)x%=(k%=5)B)x%=(k-k%5)
C)x%=k-k%5D)(x%=k)-(k%=5)
15.设有“intx=11;
”则表达式(x++*1/3)的值是。
A)3B)4C)11D)12
16.已定义c为字符型变量,则下列语句中正确的是。
A)c=’97’B)c=“97”C)c=97D)c=“a”
17.sizeof(float)是。
A)一个双精度型表达式B)一个整型表达式
C)一种函数调用D)一个不合法的表达式
18.有以下定义语句:
doublea,b;
intw;
longc;
若各变量已正确赋值,则下列选项中正确的表达式是。
A)a=a+b=b++B)w%((int)a+b)
C)(c+w)%(int)aD)w=a=b
19.若变量a是int类型,并执行了语句:
a=‘A’+1.6;
,则正确的叙述是。
A)a的值是字符CB)a的值是浮点型
C)不允许字符型和浮点型相加D)a的值是字符’A’的ASCII值加1
20.设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是。
A)6.500000B)6C)5.500000D)6000000
21.在下列选项中,不正确的赋值语句是。
A)++t;
B)n1=(n2=(n3=0));
C)k=i==j;
D)b+c=1;
22.已知chara;
intb;
floatc;
doubled;
则表达式a+b*c-d的结果为_______型。
A)charB)intC)floatD)double
23.若x为int型变量,则执行语句x=10;
x+=x=x-x后,x的值为_______。
A)0B)10C)20D)30
24.若x、a、b、c均为int型变量,则执行表达式x=(a=4,b=8,c=12)后,x的值为_______。
A)4B)8C)12D)24
25.在C程序中,x+y是_______、x+y;
是_______。
A)表达式、语句B)表达式、表达式
C)语句、语句D)语句、表达式
26.假设变量a是整型,b是实型,c是双精度型,则表达式30+a+c*b的值的数据类型是。
A)intB)floatC)doubleD)不确定
27.在C语言中,char型数据在内存中的存储形式是 。
A)补码B)反码C)原码D)ASCII码
28.执行下列程序片段时输出结果是。
intx=13,y=5;
printf(“%d”,x%=(y/=2));
A)3B)2C)1D)0
二.填空题
1.在C语言中所提供的数据结构是以数据类型形式出现的,其中的基本类型包括int型即___、float型即___、double型即___、char型即___等。
2.C语言中的标识符只能由三种字符组成,它们是、和。
3.C程序中的字符常量是用___括起来的一个字符;
除此之外,还允许用一种特殊形式的字符常量,是以___开头,被称为转义字符。
4.字符串常量是一对___括起来的字符序列,且以___结束。
5.常量是指在程序执行过程中其值__改变的量。
6.变量是指在程序执行过程中其值__的量。
7.C实型变量分为__和__两类。
8.转义字符'
\n'
表示__,使光标移到屏幕上下一行开头。
9.一个字符变量在内存中占__字节。
10.一个字符数据既可以以字符形式输出,也可以以__形式输出。
11.字符串常量是用__括起来的字符序列。
12.在进行运算时,不同类型的数据必须__,然后进行运算。
13.可以利用__运算符将一个表达式的值转换成指定的类型。
14.有两种类型转换,一种是在运算时不必用户指定,系统自动进行类型转换;
另一种是__。
15.两个整数相除的结果是__。
16.求模运算符(%)只能用于__操作数。
17.一个表达式的最后加上一个__就成了一个语句。
18.若intx=3,则执行表达式x*=x+=x-1后x的值为__。
19.若a是int型变量,则表达式((a=4*5,a*2),a+6)的值为。
20.若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为。
21.若a是int型变量,则执行表达式a=25/3%3后a的值为。
22.若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++
x的值为,n的值为。
三、问答题
1.字符型常量和字符串常量有什么区别?
2.华氏温度F与摄氏温度c的转换公式为:
c=(F-32)*5/9,则floatc,F;
c=5/9*(F-32)是其对应的C语言表达式吗?
如果不是,为什么?
四、程序阅读题
1.写出以下程序运行的结果。
#include<
stdio.h>
intmain()
{
inti,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf(“%d,%d,%d,%d”,i,j,m,n);
return0;
}
2.写出以下程序运行的结果。
#include<
intmain()
inta=7,b=9;
a=a+b;
b=a-b;
a=a-b;
printf("
a=%d,b=%d\n"
a,b);
return0;
3.写出以下程序运行的结果。
inta,b,c;
a=(b=(c=3)*5)*5;
a=%d,b=%d,c=%d\n"
a,b,c);
4.已知字母A的ASCII码为65。
以下程序运行后的输出结果是______。
{
chara,b;
a='
A'
+'
5'
-'
3'
b=a+'
6'
2'
printf("
%d%c\n"
a,b);
5.写出以下程序的输出结果。
{inty=3,x=3,z=1;
printf(“%d%d\n”,(++x,y++),z+2);
return0
第3章编程语句——简单程序构建的方法
1.以下程序的输出为。
intmain()
doublex=213.82631;
%-6.2e\n"
x);
A)213.82B)21.38e+01C)2.14e+02D)-2.14e2
2.语句printf(“%%d%d”,123);
将输出:
A)%123%dB)%%d123C)%d123D)上述语句语法有错
3.以下程序的输出结果是。
intx=3,y=2,z=1;
%s=%d\n"
"
x/y&
z"
x/y&
z);
x^y&
~z"
x^y&
~z);
A)x/y&
z=0B)x/y&
z=1C)s=x/y&
z=0D)x/y&
z=1
s=x^y&
~z=1x^y&
~z=0x^y&
~z=0
4.执行语句scanf(“%c%c%c”,&
c1,&
c2,&
c3),输入abc时,变量c1、c2、c3的值分别为。
A)'a','b','c'B)'a','b',''C)'a','','b'D)'a','','c'
5.有以下程序段:
intm=0,n=0;
charc='
a'
scanf("
%d%c%d"
,&
m,&
c,&
n);
printf("
%d,%c,%d\n"
m,c,n);
若从键盘上输入:
10A10<
回车键>
,则输出结果是。
A)10,A,10B)10,a,10C)10,a,0D)10,A,0
6.若有以下变量说明和数据的输入方式,则正确的输入语句为。
变量说明:
floatx1,x2;
输入方式:
4.52<
回车>
3.5<
A)scanf(“%f,%f”,&
x1,&
x2);
B)scanf(“%f%f”,&
C)scanf(“%3.2f%2.1f”,&
D)scanf(“%3.2f%2.1f”,&
7.下面程序的运行结果是。
#defineDATA20+7
DATA=%d"
DATA/3);
A)DATA=22B)DATA=21C)DATA=9D)以上都不对
8.设c1,c2均是字符型变量,则以下不正确的函数调用为。
A)scanf(“c1=%cc2=%c”,&
c2);
B)c1=getchar();
C)putchar(c2);
D)putchar(c1,c2);
9.若a为整型变量,则以下语句。
a=-2L;
printf(“%d\n”,a);
(A)赋值不合法(B)输出值为-2(C)输出为不确定值(D)输出值为2
10.有以下程序
{intx=102,y=012;
printf(“%2d,%2d\n”,x,y);
执行后输出结果是。
(A)10,01(B)02,12(C)102,10(D)02,10
11.以下程序输出的结果是。
\n*a=%15s*"
"
chinazhongguo"
);
\n*b=%-5s*"
chi"
A)*a=chinazhongguo*B)*a=chinazhongguo*
b=**chi**b=chi*
C)*a=*chinabeijing*D)*a=chinazhongguo*
*b=chi**b=chi*
12.若变量c定义为float类型,当从终端输入283.1900<
CR>
(<
代表回车键),能给变量c赋以283.19的输入语句是。
A)scanf(“%f”,c);
B)scanf(“%8.4f”,&c);
C)scanf(“%6.2f”,&c);
D)scanf(“%8f”,&c);
13.设有如下程序段
intx=2002,y=2003;
%d\n"
(x,y));
则以下叙述中正确的是________。
A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出
B)运行时产生出错信息
C)输出值为2002
D)输出值为2003
14.putchar函数可以向终端输出一个。
A)整型变量表达式的值B)实型变量的值
C)字符串D)字符或字符型变量的值
15.下列函数中能够向终端输出一个字符或字符型变量值的是。
A)getsB)putsC)getcharD)putchar
16.若有下列语句
charc=’A’;
printf(“%d”,c);
则输出的结果是。
A)AB)cC)65D)错误的语句
17.下列程序输入’a’字母后,执行程序后输出的结果是。
charc;
c=getchar();
c=c-32;
%c\n"
c);
A)65B)AC)97D)a
18.执行下列程序片段时输出结果是。
floatx=-1023.012;
printf(“\n%8.3f,”,x);
printf(“%10.3f”,x);
A)1023.012,-1023.012B)-1023.012,-1023.012
C)1023.012,-1023.012D)-1023.012,1023.012
19.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,正确的数据输入方式是。
inta1,a2;
charc1,c2;
scanf(“%d%c%d%c”,&
a1,&
a2,&
A)10A20B↙B)10A20B↙
C)10A20B↙C)10A20B↙
20.对于下述语句,若将10赋给变量k1和k3,将20赋给变量k2和k4,则应按方式输入数据。
intk1,k2,k3,k4;
scanf(“%d%d”,&
k1,&
k2);
scanf(“%d,%d”,&
k3,&
k4);
A)1020↙B)1020↙C)10,20↙D)1020↙
1020↙1020↙10,20↙10,20↙
21.阅读以下程序,当输入数据的形式为25,13,10<
正确的输出结果为。
intx,y,z
scanf("
%d%d%d"
&
x,&
y,&
x+y+z=%d\n"
x+y+z);
return0
}
A)x+y+z=48B)x+y+z=35
C)x+z=35D)不确定值
22.阅读以下程序,若运行结果为如下形式,输入输出语句的正确内容是。
main()
{intx;
floaty;
enterx,y:
"
)
输入语句
输出语句
}
输入形式enterx,y:
23.4
输出形式x+y=5.40
A)scanf("
%d,%f"
y);
\nx+y=%4.2f"
x+y);
B)scanf("
%d%f"
y);
\nx+y=%4.2f"
C)scanf("
\nx+y=%6.lf"
D)scanf("
%d%3.1f"
23.根据定义和数据的输入方式,输入语句的正确形式为。
已有定义:
floatfl,f2;
数据的输入方式:
4.52
3.5
A)scanf("
%f,%f"
f1,&
f2);
B)scanf("
%f%f"
f2);
C)scanf("
%3.2f%2.1f"
f2,&
f1);
D)scanf("
24.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。
如果字符串长度大于5,则输出按方式。
A)从左起输出该字串,右补空格B)按原字符长从左向右全部输出
C)右对齐输出该字串,左补空格D)输出错误信息
25.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。
如果字符串长度小于5,则输出按方式。
26.已有定义inta=-2;
和输出语句:
%8lx"
a);
以下正确的叙述是。
A)整型变量的输出格式符只有%d-种
B)%x是格式符的-种,它可以适用于任何-种类型的数据
C)%x是格式符的-种,其变量的值按+六进制输出,但%8lx是错误的
D)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度
27.以下说法正确的是。
A)输入项可以为-实型常量,如scanf("
%f"
3.5);
B)只有格式控制,没有输入项,也能进行正确输入,如scanf("
a=%d,b=%d"
C)当输入-个实型数据时,格式控制部分应规定小数点后的位数,如scanf("
%4.2f"
f);
D)当输入数据时,必须指明变量的地址,如scanf("
28.根据下面的程序及数据的输入方式和输出形式,程序中输入语句的正确形式应该为:
。
main()
{charch1,ch2,ch3;
输入语句
%c%c%c"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题 解答 1021 修改