C语言章节习题集全文档格式.docx
- 文档编号:20426999
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:71
- 大小:55.03KB
C语言章节习题集全文档格式.docx
《C语言章节习题集全文档格式.docx》由会员分享,可在线阅读,更多相关《C语言章节习题集全文档格式.docx(71页珍藏版)》请在冰豆网上搜索。
B)a<
=b
C)a||b+c&
b-cD)!
((a<
b)&
!
c||1)
3.设ch是char型变量,其值为'
,且有下面的表达式:
ch=(ch>
='
ch<
z'
)?
(ch-32):
ch
上面表达式的值是
B)'
A'
C)'
Z'
D)'
4.下面程序的输出是
{inta=-1,b=4,k;
k=(a++<
=0)&
(!
(b--<
=0));
%d%d%d\n"
,k,a,b);
A)003B)012C)103D)112
5.字符串“\t\n\\\045\’”的长度为。
A)4B)10C)5D)说明不合法
6.C语言中最基本的数据类型包括。
A)整型,实型,逻辑型B)整型,实型,布尔型C)整型,实型,字符型D)整型,实型,指针型
7.C浯言中的构造类型包括。
A)数组型,结构体型,联合体型B)结构体型,联合体型,指针型
C)结构体型,联合体型,枚举类型D)数组型,结构体型,联合体型,指针型
8.设C语言中,一个int型数据在内存中占用两个字节,则int型数据的取值范围为:
A)-128~127B)-32768~32767C
9.若a是float型变量,则表达式a=l,a++,a+=a的值为。
A)2B)4C)2.0D)4.0
10.以下运算符中,运算优先级最低的是。
A)->
B)++C)*D)=
11.不属于字符型常量的是。
B)"
A"
\\'
\"
12.不属于整型常量的是
A)10B)010C)0xl0D)4/2
13.属于实型常量的是
A)E10B)10C)10LD)1E10
14.'
\060'
和"
\060"
在内存中占用的字节数分别为。
A)22B)21C)12D)44
15.设有以下程序片段,请问执行后的输出结果是
inti=010,j=10,k=0xl0;
%d,%d,%d"
,k,j,i);
A)16,10,8B)81016C)10,10,10D)8,10,16
16.设整型变量a的值为5,使整型变量b的值不为2的表达式是。
A)b=a/2B)b=6-(--a)C)b=a%2D)b=a>
3?
2:
1
17.设单精度变量f,g的值均为5.0,则下面的表达式中,使f为10.0的表达式是。
A)f+=gB)f-=g+5C)f*=g-5D)f/=g*5
18.表达式-l?
(10?
10:
1):
(0?
0:
-1)的值为
A)10B)1C)0D)-1
19.sizeof(double)的值为
A)1B)2C)4D)8
20.sizeof(float)是。
A)一种函数调用B)—个单精度表达式C)—个整型表达式D)—个不合法的表达式
21.设有以下的程序片段,请问执行后变量i的值是。
inti;
floatf=10.5;
i=((int)f)/2;
A)5.0B)5.5C)6D)5
22.以下程序的输出结果是
#include<
stdio.h>
{intk=4,m=1,p;
p=func(k,m);
%d,"
,p);
%d\n"
func(a,b)
inta,b;
{staticintm=0,i=2;
i+=m+1;
m=i+a+b;
return(m);
A)8,17B)8,16C)8,20D)8,8
1.数学式sin
x*(a+b)/(a-b)写成C语言表达式是____。
2.若已知a=1,b=2,则表达式!
a<
b的值为____。
3.C语言的常量可以分为____,____,____,____,____,____。
4.C语言的基本数据类型分为____,____,____,____。
5.已知字母'
的ASCII码值为十进制数65,且ch为字符型,则执行语句ch='
+'
6'
-'
0’后,ch的值为____。
6.设C语言中,一个int型数据在内存中占用两个字节,则unsignedint型数据的取值范围为____。
7.若a是float型变量,且a=6,则表达式a/2+(int)(a+1)%2的值为____。
8.假设m是一个三位数,百位、十位、个位的数值分别为a、b、c,则百位、十位、个位的数值分别为c、a、b的数的表达式是____。
第四章顺序程序设计
1.设有整型变量m值为8,下列赋值语句中,正确的是。
A)++m=6;
B)m=m++;
C)m+1=8;
D)m+1+=8;
2.设字符型变量ch的值为'
,整型变量m的值为'
1'
,假定执行ch=getchar();
m=getchar();
时,从键盘输入B,则变量ch和m的值分别为。
和'
B'
\n'
3.设字符型变量ch的值为'
,假定执行putchar(m);
putchar('
);
putchar(ch);
后,则输出结果是。
A)A1B)lAC)AlD)1A
4.如果用scanf()来输入长整型数据,则正确的格式控制符是。
A)%xB)%lxC)%lDD)%d
5.如果用printf()来输出双精度型数据、则正确的格式控制符是。
A)%-10.2fB)%lfC)%leD)%lg
6.执行语句scanf("
,&
m,&
n);
使m和n的值分别为1和2,正确输入是。
A)1B)12C)1,2D)122
7.设整型变量a和b的值分别为8和9。
,(a++,++b),b--);
的输出是。
A)8,8B)8,7C)9,9D)10,9
8.设有下列程序段,则其正确的输出是。
intx=011,y=0xll;
x=%-3dy=%3d"
,x,y);
A)口口917口B)x=9口口y=口17C)x=口口9y=17口D)x=lly=x11
9.设字符型变量ch已有值,下列语句中错误的是。
A)scanf("
%c%c"
ch,ch);
B){intch=6;
%d"
,ch);
C)5;
D)ch>
48&
0x3A;
10.下列表达式中,结果不为1.0的表达式是。
A)fabs(-1.0)B)powl0(0))C)floor(0.99)D)sin(90*3.14159/180)
11.运行下列程序的输出是。
{intk=1;
{intk=2;
,k);
A)12B)21C)11D)22
12.运行下列程序的输出是。
{charch='
;
%c%d"
,ch,ch++);
A)C65B)B65C)B66D)C66
1.使用"
putchar()"
函数时,程序的开头必须写一条包含命令:
____。
2.用输入函数scanf()输入长整型十六进制数据时,对应的格式控制符是____.
3.用输入函数scanf()输入双精度实型数据时,对应的格式控制符可以是%lf或____。
4.用输出函数printf()输出双精度实型数据时,对应的格式控制符可以选用%f,%e或____
5.在输出函数printf()中使用了%s格式字符,则输出表达式是____。
6.表达式语句的构成规则是在任何表达式的后面加上一个____。
7.表达式"
sound(1200)"
的运算结果是____。
8.表达式"
random(889)"
的运算结果是产生____—个整数。
9.运行下列程序的输出结果是____
#include”math.h”
{floatf1=1.0,f2=-2.0;
printf(“f2=%f,fabs(f2)>
f1=%d”,f2+=f1,fabs(f2)>
f1);
10.运行下列程序的输出结果是____
{intm=64;
printf(%d,%c,%#o,%#x”,m,m+1,m+2,m+3);
第五章选择程序设计
1.已知a,b,c的值分别是1,2,3,则执行下列语句后a,b,c的值分别是
if(a++<
b){c=a;
a=b;
b=c;
elsea=b=c=0;
A)0,0,0B)1,2,3C)1,2,1D)2,2,2
2.以下if语句中格式正确的是
A)if(a>
b)b++elsea++;
B)if(a>
b){b++;
,b);
else{a++;
,a);
C)if(a>
,b)}
D)if(a>
b)b++;
elseprintf("
3.若i是int型变量,且有下面的程序片段
i=0;
if(i<
=0)printf("
####"
)
****"
上面程序片段的输出结果是
A)####B)****C)####****D)有语法错误,无输出结果
4.有以下程序:
{intx,y;
Enteraninteger(x):
"
scarf("
x);
if(x++<
0)y=-1;
elseif(x==0)y=0;
elsey=1;
y);
现从键盘上输入-1,则程序的输出是。
A)-1B)0C)1D)不确定的值
5.有以下程序,运行后的输出结果是
{inta=2,b=0,c=-1;
if(a=b+c)
if(a>
0)b=c=a;
elseif(a==0)a=b=c=0;
elsea=b=c=1;
elsea=b=c=-1;
,a,b,c);
A)1,1,1B)0,0,0C)-1,-1,-1D)2,2,2
6.若执行下面的程序时从键盘上输入10,则输出是
{inta;
scanf("
a);
if(a++>
10)
,++a);
,a--);
A)12B)11C)10D)9
7.下面程序的输出结果是。
{inti=2,p;
p=f(i,i+1);
intf(a,b)
{intc;
c=a;
b)c=1;
else
if(a==b)c=0;
elsec=-1;
return(c);
A)-1B)0C)1D)2
8.有以下程序:
.
{intal=0,a2=0,a3=0;
charch;
while((ch=getchar())!
switch(ch)
{case'
:
a1++;
case'
a2++;
default:
a3++;
,a1,a2,a3);
现从键盘上输入AAAAABBBC<
回车>
,则程序执行后的输出结果是
A)5,8,9B)5,3,1C)5,3,9D)5,8,1
9.请读程序:
{intx=l,y=0,a=0,b=0;
switch(x)
{casel:
switch(y)
{case0:
a++;
break;
case1:
b++;
break;
case2:
a++;
b++;
a=%d,b=%d\n"
,a,b);
上面程序的输出结果是
A)a=2,b=lB)a=l,b=lC)a=l,b=0D)a=2,b=2
10.若要求表示a不等于0的关系,错误的表达式是
A)a<
>
0B)a!
=0C)aD)a<
0||a>
11.程序的三种基本结构是。
A)顺序结构,循环结构,递归结构B)顺序结构,循环结构,选择结构
C)选择结构,循环结构,递归结构D)顺序结构,选择结构,递归结构
12.C语言中,逻辑真表示为
A)TRUEB)'
y'
或'
Y'
C)1D)非零值
13.设有如下程序:
stdio.h>
{charch1,ch2;
scanf(“%c%c”,&
ch1,&
ch2);
if(ch1!
=’B’)
{switch(ch2)
{case’B’:
switch(ch1)
{case’A’:
printf(“AB”)
case’B’:
printf(“BB”);
case‘A’:
printf(“AA”)
printf(“BA”);
}}}}}
若执行是从键盘上输入的数据时AB,则输出是
A)ABB)ABAAC)ABBBAABAD)BBBA
14.已知a,b,c,w时int型变量,a,b均以赋值,且满足a<
b,先有以下程序段:
scanf(“%d”,&
c);
w=a;
if(w<
=b)w=b;
=c)printf(“%d”,w);
elsew=c;
为把c的值放入w中,则执行此程序段时,从键盘输入的c的值不应取的范围是
A)b>
cB)c>
=bC)c>
a且c<
bD)c>
a或c<
b
15.设a,b,w为整型变量,ch为字符型变量,用if语句改写以下的程序段:
w=a+b;
w=a-b;
*'
w=a*b;
/'
w=a/b;
在下列写法中,错误的是
A)if(ch=='
)w=a+b;
B)if(ch=='
)w=a*b;
if(ch=='
)w=a-b;
elseif(ch=='
)w=a/b;
C)if(ch=='
D)if(ch=='
elsew=a/b;
16.实型变量a,b中放有两门课程的考试成绩,如果两门成绩都及格(成绩>
=60),则显示“pass”,如果a成绩不及格,则显示"
fail"
,如果a成绩及格而b成绩不及格则不做任何处理。
下列程序段中可实现上述要求的是
=60)B)if(a<
60)
if(b>
=60)printf(”fail”);
pass"
elseif(b>
=60)
=60)&
(b>
=60))D)if(b>
elseif(b<
60)printf("
17.下面满足当(a>
=b)&
(c==d)时u=w,否则x=y的if语句是
A)if(a<
b)B)if(a<
b)x=y;
if(c==d)x=y;
elseif(c==d)u=w;
elsex=y;
elseu=w;
C)if(a<
b)D)if(a>
=b)
{if(c==d)x=y;
}}
18.以下程序的输出结果是
{inta=0,b=l,c=0,x=0,y=0;
if(x<
=y)
if(y=l0)
if(!
b)a=1;
elseif(c)a=10;
a=-1;
A)1B)10C)-1D)不确定的值
1.有以下程序:
{inti;
i);
swith
(1)
{case1:
printf(“%d”,i++)
case2:
printf(“%d,i++)
case3:
case4:
default:
printf(“END”)}}
输入数据1,执行以上程序,则输出结果是_1234___
2.执行下面程序后输出的结果为__14_。
{inti=0,j;
for(j=0;
j<
4;
j++)
switch(j)
i=i+1;
i=i+2;
i=i+3;
printf(“%d\n”,i);
3.设有以下程序:
ch1,&
ch2);
AB"
BB"
AA"
BA"
}}}
Nothing"
若执行此程序段时输入的数据是ABabbb__。
while((c=getchar())!
{switch(c-'
2'
{case0:
casel:
putchar(c+4);
case3:
putchar(c+3);
putchar(c+2);
若执行时从键盘上输入2473<
CR>
(<
代表回车),则程序的输出结果是___668977_。
5.若x是int型变量,请写出"
x是偶数则为真"
的表达式__if(x/2=0)_x==1_。
5.x%2==0
6.x,y,z均为整型变量,请写出描述"
x或y等于z"
的表达式____。
6.(x==z)||(y==z)
7.已知a=3,b=03,c='
0'
,则表达式a>
b&
a>
c||b>
c&
c的值为__0__。
8.以下程序的功能是:
输入圆的半径,和运算标志,按照运算标志进行运算,输出运算后的结果。
请在下划线处填入合适内容。
标志指定运算
求面积
求周长
其他值求周长,面积
#defineP3.14
{charc;
floatr,area,length;
seanf("
%c,%f"
c,&
r);
switch(___c_)
area=P*r*r;
area=%f"
,area);
length=2*P*r;
length=%f"
,length);
—break—;
area=%d,length=%f"
,area,length);
9.以下程序的功能是:
从键盘上接受三个十进制整型数据,对这三个数据进行从小到大的排序,输出排序后的数据。
请完成该程序。
{intx,y,z,i;
x,&
y,&
z);
if(_x>
y___){i=x;
x=y;
y=i;
if(_y>
z___){i=y;
y=z;
z=i;
if(__x>
z__){i=x;
x=z;
%d,%d,%d\n"
,x,y,z);
10.以下程序的功能是:
从键盘输入一年份数据,判断此年份是否为闰年。
其中判断闰年的条件是:
能被4整除但不能被100整除,或能被400整除。
请填空完成该程序。
#inclu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 章节 习题集