C语言习题Word格式文档下载.docx
- 文档编号:19422569
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:68
- 大小:68.89KB
C语言习题Word格式文档下载.docx
《C语言习题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言习题Word格式文档下载.docx(68页珍藏版)》请在冰豆网上搜索。
13、若变量已正确定义并赋值,以下符合c语言语法的表达式是()
A)a:
=b+1B)a=b=c+2
C)int18.5%3D)a=a+7=c+b
14、设有定义:
inta=2,b=3,c=4;
,则以下选项中值为0的表达式是
A)(!
a==1)&
&
(!
b==0)B)(a<
B)&
!
c||1
C)a&
bD)a||(b+b)&
(c-a)
15、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’后,c2中的值为()
A)d
B)68
C)不确定的值
D)C
16、设有说明:
charw;
intx;
floaty;
doublez;
则表达式w*x+z-y值的数据类型为()
A)float
B)char
C)int
D)double
17、设C语言中,一个shortint型数据在内存中占2个字节,则unsignedshortint型数据的取值范围为
()
。
A)0~255
B)0~32767
C)0~65535
D)0~2147483647
18、设以下变量均为int类型,则值不等于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)
19、下列四组选项中,均是不合法的用户标识符的选项是
A)W
P_0
do
B)b-a
goto
int
C)float
la0
_A
D)-123
abc
TEMP
20、以下叙述正确的是
A)在C程序中,每行只能写一条语句
B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数
C)在C程序中,%是只能用于整数运算的运算符
D)在C程序中,一行可以写一条语句也可以写多条语句。
21、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后,x和n的值为()
A)11,6
B)10,5
C)10,6
D)11,5
22、若有定义:
intx=3,y=2;
floata=2.5,b=3.5;
则表达式(x+y)%2+(int)a/(int)b的值为
A)1.7
B)1
C)2
D)1.71
23、在C语言中,要求运算数必须是整型的运算符是()。
A)/B)++C)!
=D)%
第3章顺序结构程序设计
重点掌握输入函数scanf()、输出函数printf()的使用方法,以及程序编写的方法。
一、选择题
1、当用户要求输入的字符串中含有空格时,应使用的输入函数是()
A)scanf()B)getchar()
C)gets()D)puts()
2、有以下程序
#include”stdio.h”
voidmain()
{inta=0,b=0;
a=10;
b=20;
printf(“a+b=%d\n”,a+b);
}
程序运行后的输出结果是()
A)a+b=10B)a+b=30
C)30D)出错
3、整型变量a、b、c的值分别为2、3、4,执行运算表达式“a*=16+(b++)-(++c)”后,a的值是()
A)31B)29
C)30D)28
4、有以下程序
{floatx=123.456;
printf(“%-5.2f\n”,x);
A)123.4B)123.5
C)123.45D)123.46
5、设i为整型变量,f为float变量,用下面的语句给这两个变量输入值:
scanf(“i=%d,f=%f”,&
i,&
f);
为了把100和745.14分别赋给i和f,则正确的输入是()
A)100<
空格>
745.14<
回车>
B)i=100,f=745.14<
C)100<
D)x=100<
,y=745.14<
6、若变量a,i已正确定义,且i已正确赋值,合法的语句是()
A)a==1;
B)++i;
C)a=a++=5;
D)a=int(i);
7、若运行时给变量x输入12,则以下程序的运行结果是()
{
intx,y;
scanf(“%d”,&
x);
y=x>
12?
x+10:
x-12;
printf(“%d\n”,y);
A)0B)22
C)12D)10
8、以下叙述不正确的是
A)在C程序中,逗号运算符的优先级最低
B)在C程序中,MAX和max是两个不同的变量
C)若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中的值不变
D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
9、以下说法正确的是()。
A)输入项可以为一实型常量,如scanf("
%f"
3.5);
B)只有格式控制,没有输入项,也能进行正确输入,如scanf("
a=%d,b=%d"
);
C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("
%4.2f"
&
D)当输入数据时,必须指明变量的地址,如scanf("
10、已有如下定义和输入语句,若要求a1,a2,c1,c2值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是()。
inta1,a2;
charc1,c2;
scanf("
%d%c%d%c"
a1,&
c1,&
a2,&
c2);
A)10A20B<
CR>
B)10A20B<
CR>
C)10A20<
D)10A20B<
cR>
。
11、在C语言中,char型数据在内存中的存储形式是()。
A)补码B)反码C)原码D)ASCII码
12、printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。
如果字符串长度大于5,则输出按方式()。
A)从左起输出该字串,右补空格
B)按原字符长从左向右全部输出
C)右对齐输出该字串,左补空格
D)输出错误信息
13、有如下程序
{chara,b,c,d;
%c,%c,%d,%d"
a,&
b,&
c,&
d);
printf("
%c,%c,%c,%c\n"
a,b,c,d);
若运行时从键盘上输入:
6,5,65,66<
,则输出结果是()
A)6,5,6,6B)6,5,A,B
C)6,5,65,66D)6,5,a,b
二、填空题
1、给定的程序的功能是:
从键盘输入两个整数,交换它们的值,并输出结果。
__1__
inta,b;
__2__
printf(“请输入两个整数:
a,b\n”);
scanf(“%d%d”,&
b);
printf(“交换前a,b的值为:
\n”);
printf(“a=%d,b=%d\n”,a,b);
__3__;
a=b;
b=t;
printf(“交换后a,b的值为:
2、给定的程序的功能是:
从键盘输入一个四位的正整数,将其最高位移到个位,并输出结果。
例如:
输入1234,输出是2341。
#include"
stdio.h"
voidmain__1__
intt;
printf("
请输入一个四位正整数:
\n"
scanf(__2__,&
a);
移位前a的值为:
a=%d\n"
a);
__3__
b=a%1000*10+t;
a=b;
移位后a的值为:
三、改错题
计算半径为5的圆的面积,并输出结果。
/**********found***********/
#definePI=3.14159
{
floatrs;
r=5.0;
s=PI*r*r;
printf(“%d\n”,s);
2、给定程序的功能是:
由键盘输入两个实数求和,并输出结果。
voidmain();
floata,b,sum;
scanf(“%f%f”,&
sum=a+b
printf(“sum=%f\n”,sum);
四、编程题
1、从键盘输入一个实数保留该实数小数点后两位数,并对第三位进行四舍五入。
2、将a,b两个两位正整数合并形成一个新的整数放在c中。
合并的方式是:
将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位和个位数依次放在变量c的千位和十位上。
当a=45,b=12时,c=1425。
3、从键盘输入一个小写字母,将其转换为大写字母,并输出。
输入a,输出为A。
第4章选择结构程序设计
本章学习内容主要包括:
关系运算符及关系表达式、逻辑运算符及逻辑表达式、分支结构的两条语句if语句和switch语句。
其中由关系运算符和逻辑运算符相结合组成的表达式、if语句格式的正确使用是本章的重点和难点。
1.逻辑运算符中,运算优先级按从高到低的顺序依次为()。
A.&
,!
,||
B.||,&
C.&
,||,!
D.!
,&
,||
2.表达式!
x||a==b等价于()。
A.!
((x||a)==b)
B.!
(x||y)==b
C.!
(x||(a==b))
D.(!
x)||(a==b)
3.表示关系x≤y≤z的c语言表达式为()。
A.(x<
=y)&
(y<
=z)B.(x<
=y)AND(y<
=z)
C.(x<
=y<
=z)D.(x<
=z)
4.能正确表示a≥10或a≤0的关系表达式是()。
A.a>
=10ora<
=0B.a>
=10|a<
C.a>
=10&
a<
=0D.a>
=10||a<
5.设整型变量m,n,a,b,c,d均为1,执行(m=a>
b)&
(n=c>
d)后,m,n的值是()。
A.0,0
B.0,1
C.1,0
D.1,1
6.intb=0,x=1;
执行语句if(x++)b=x+1后,x,b的值依次为()。
A.2,3B.2,0
C.3,0D.3,2
7.根据题目描述,写出正确的if语句为()。
如果x>
0,求x的平方根(x和y都是单精度类型的数据)。
(1)将结果放入变量y中;
(2)输出x的平方根y。
A.if(x>
0)B.if(x>
0)
{y=sqrt(x);
{y=sqrt(x);
}
y);
}
C.if(x>
0)D.{if(x>
0)
y=sqrt(x);
}
8.阅读下面的程序,程序的运行结果为()。
#include<
stdio.h>
voidmain()
inta=2,b=-1,c=2;
if(a<
b)
if(b<
0)c=0;
elsec+=1;
%d\n"
c);
A.2
B.
0
C.3
D.-1
9.阅读下面的程序,程序的运行结果为()。
#include<
intx=20;
if(x>
=0)
if(x<
50)
xisok\n"
else
xisnotok\n"
A.xisnotok
xisok
C.xisok\n
D.无输出结果
10.阅读下面的程序,程序的运行结果为()。
intx,a;
%d"
a=x%10;
switch(a)
case0:
case2:
case4:
case6:
case8:
even!
break;
default:
odd!
A.若给x输入奇数,则输出odd
;
否则输出even
B.若给x输入奇数,则输出even
否则输出odd
C.无论给x输入奇数或偶数,均输出odd
D.无输出结果
1.计算y的值。
x+5(x>
=0)
y=
x-5(x<
floatx,y;
scanf("
__1__);
__2__(x>
y=x+5;
else
y=__3__;
2.从键盘输入某一年份,判断该年是否为闰年。
intyear;
__1__"
year);
__2__(year%4==0&
year%100!
=0||year%100==0__3__year%400==0)
%d是闰年"
year);
elseprintf("
%d不是闰年"
3.从键盘输入一个整型数,判断它是否既能被3整除,又能被7整除。
inty;
if(y__2__3==0&
y%7==0)
%d能被3和7整除"
%d不能被3和7整除"
1.从键盘上输入三个数,求出其中的最大值。
利用该程序的方法试求出四个数、五个数中的最大值。
floata,b,c,max;
%f%f%f"
b,c);
max=a
if(max<
=b)max=b;
else(max<
=c)max=c;
max);
2.用海伦公式求三角形的面积,三角形的三条边由键盘输入,求面积前须判断三角形的三条边能否构成三角形。
math.h>
floata,b,c,h,s,area;
%d%d%d"
c);
else(a>
0&
b>
c>
a+b>
c&
b+c>
a&
a+c>
b)
{h=(a+b+c)/2;
s=h*(h-a)*(h-b)*(h-c);
area=fabs(s);
area);
else
不能构成三角形"
3.从键盘上输入一个字符,判断它是大写字符、小写字符还是其它字符。
charch;
ch);
if(ch>
='
a'
&
ch<
z'
)
是小写字符"
elseif(ch>
A'
||ch<
Z'
是大写字符"
elseif
是其它字符"
1.判断两个数的大小关系。
2.从键盘输入某一学生的百分制成绩,给出相应的等级。
90分以上为“Excellent”;
80~89分为“VeryGood”;
70~79分为“Good!
”;
60-69分为“Pass!
”;
60分以下为“Fail”,试用switch语句和if语句分别来实现。
第5章循环结构程序设计
本章是C语言的重点章节,主要内容包括循环结构的三类语句while语句、do—while语句、for语句以及在三类语句中使用的break语句和continue语句。
本章的重点内容是三类循环语句的执行、应用过程和三类循环语句之间的相互嵌套。
必须熟练掌握三类循环语句及其嵌套语句的执行、应用过程,这是本章的难点,也是后续章节的编程基础。
在循环结构的三类语句中,不管使用哪一类循环语句编写程序,都要用到循环变量。
在一个程序中,通常情况下,和循环变量相关的有三个表达式:
初始值表达式、终止值表达式和增量表达式。
1.下面关于for循环的正确描述是()。
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判断终止条件
C.在for循环中,不能用break语句跳出循环体
D.在for循环的循环体语句中,可以包含多条语句,但必须用大括号括起来
2.对for(表达式1;
表达式3)可以理解为()。
A.for(表达式1;
0;
表达式3)
B.for(表达式1;
1;
C.for(表达式1;
表达式1;
D.for(表达式1;
表达式3;
3.若有“intm;
”,则以下循环执行次数是()。
for(m=2;
m==0;
)
A.无限次B.0次C.1次D.2次
4.下面不是死循环的是()。
A.for(y=0,x=1;
x>
++y;
x=i++)i=x;
B.n=0;
do{++n;
}while(n>
=0);
C.while
(1){x++;
D.for(i=10;
;
i--)sum+=i;
5.下面程序段的运行结果是()。
for(i=0;
i<
5;
i++)
if(i==2)continue;
i);
A.01B.0134C.01234D.无输出结果
6.下面程序段的运行结果是()。
intk=10;
while(k=0)k=k-1;
A.while循环执行10次B.循环是无限循环
C.循环体语句一次也不执行D.循环体语句执行一次
7.以下正确的描述是()。
A.continue语句的作用是结束整个循环的执行
B.只能在循环体内和switch语句
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题