c语言题目及答案Word格式文档下载.docx
- 文档编号:13426236
- 上传时间:2022-10-10
- 格式:DOCX
- 页数:27
- 大小:25.85KB
c语言题目及答案Word格式文档下载.docx
《c语言题目及答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《c语言题目及答案Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
设a、b为字符型变量,入是。
4.
执行
scanf("
a=%c,b=%c"
&
a,&
b);
后使a为'
A'
b为'
B'
,从键盘上的正确输
5.
B.'
'
已知intx=12,y=3;
'
'
.A=A,B=BD
执行下述程序后,变量
a=A,b=B
x的值是
6.
7.
do{x/=y--;
}while(x>
y);
1B.2C.3D.
C语言中while和do-while循环的主要区别是do-while的循环体至少无条件执行一次while的循环控制条件比do-while的循环控制条件严格do-while允许从外部转到循环体内do-while的循环体不能是复合语句
设x和y均为int型变量,则执行下面的循环后,y的值为
for(y=1,x=1;
y<
=50;
y++){
程序运行有错误
8.
if(x>
=10)break
if(x%2==1){x+=5
x-=3:
continue;
}
以下正确的说法是
用户若需调用标准函数,调用前必须重新定义
用户可以重新定义标准库函数,若如此,该函数将失去原有含义
系统根本不允许用户重新定义标准函数
用户若需要调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,
系统
自动去调
9.
若调用一个函数,且此函数中没有return语句,则关于该函数正确的说法是
没有返回值
能返回若干个系统默认值
能返回一个用户所希望的函数值
返回一个不确定的值
10•已知函数定义如下:
floatfun1(intx,inty){floatz
z=(float)x/y
return(z);
}
主调函数中有inta=1,b=0;
可以正确调用此函数的语句是
A.printf("
%f"
fun1(a,b))
.printf("
fun1(&
b))
C.printf("
fun1(*a,*b))
11.宏定义:
#definePI31.14159中,宏名
A.单精度B.双精度C.常量
.printf("
fun1(b,a))
PI代替。
D.字符串
12.若有以下数组说明,则数值最小和最大的元素下标分别是
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};
A.1,12B.0,11C.1,11
D.0,12
13•以下合法的数组定义是
A.inta[3][]={0,1,2,3,4,5};
•inta[][3]={0,1,2,3,4};
14
.函数调用
strcat(strcpy(str1,str2),str3);
的功能是
O
将字符串
str1
复制到字符串
str2
中后再连接到字符串
str3
之后。
B.
连接到字符串
之后再复制到字符串
中后再将字符串
之后
之后再将字符串
中。
Cinta[2][3]={0,1,2,3,4,5,6};
D
•inta[2][3]={0,1,2,3,4,5,};
15.设有二维数组定义如下,则不正确的数组元素引用是
inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
A.a[2][3]B.a[a[0][0]][1]C
16.若用数组名作为函数调用时的实参,
A.数组首地址
.a[7]D.a[2][‘c'
则实际上传递给形参的是
a'
]
C.数组中全部元素的值
.数组的第一个元素值
.数组元素的个数
17.以下对指针变量进行操作的语句,正确的选项是
A.int*p,*q;
q=p;
.inta,*p,*q;
q=&
a;
p=*q;
C.inta=b=0,*p;
p=&
b=*p;
D
18.若有以下定义和语句:
.inta=20,*p,*q=&
p=q;
ints[4][5],(*ps)[5];
ps=s;
则对s数组元素的正确引用形式是
A.ps+1
.*(ps+3)
C.Ps[0][2]D.*(ps+1)+3
19.当说明一个共用体变量时系统分配给它的存储容量是
共用体中最后一个成员所需的存储容量
共用体中第一个成员所需的存储容量
成员中占存储量最大者所需的存储容量
各成员所需存储容量的总和
20.有定义如下:
structstudent
{intage;
charnum[8];
}stu[3]={{20,"
200401"
},{21,"
200402"
},{10,"
200403"
}};
structstudent*p=stu;
.p->
num
.stu[3].age
以下选项中引用结构体变量成员的表达式错误的是
A.(p++)->
C.(*p).num
二、填空题
1.设a=3,b=2,c=1,_则a>
b的值为
a>
b>
c的值为。
2.若w,x,y,乙m均为int型变量,则执行下面程序段后的m值是
w=1;
x=2;
y=3;
z=4;
m=(wvy)?
w:
x;
m=(m<
y)?
m:
y;
m=(m<
z)?
m:
Z;
3•下面程序的输出结果是
#include<
stdio.h>
main()
{inta=1,b=0
do{
switch(a)
{case1:
b=1;
break;
case2:
b=2;
default:
b=0
b=a+b;
}while(!
b)
a=%d,b=%d"
a,b)
4•下面程序的输出结果是
{intx,i
for(i=1;
i<
=100;
i++){
x=i;
if(++x%2==0)
if(++x%3==0)
if(++x%7==0)
%d"
x)
5•下面程序的输出结果是
intfunc(inta,intb)
{intc
c=a+b;
retum(c)
voidmain()
{intx=6,y=7,z=8,r
r=func((x--,y++,x+y),z--)
%d\n"
r);
6•下面程序的输出结果是
voidmain(){intx=1
f1();
f2(x);
voidf1(void){intx=3
voidf2(x)intx{printf("
++x)}
7.程序中有定义:
#defineS(r)r/r
inta=4,b=3,area;
则表达式area=S(a+b)的值为
三、程序完善题
1.以下程序的功能是计算分段函数
的值。
请完善程序。
scanf(
if(
(1)
10
20
0.5x
2020
40
{intx,c,m;
floaty;
“%d'
,&
X);
)c=-1;
elsec=
(2);
switch(c)
{case-1:
y=0;
break;
case0:
y=x;
case1:
y=10;
case3:
y=-0.5*x+20;
y=-2;
if((3))printf(
elseprintf(
“y=%f”,y);
error'
n”);
2.有以下程序段:
s=1.0;
for(k=1;
k<
=n;
k++)
s=s+1.0/(k*(k+1))
Printf("
%f\n"
s);
填空完成下述程序,使之与上述程序的功能完全相同。
s=0.0;
(1)
k=0;
do{
s=s+d;
(2)
d=1.0/(k*(k+1))
}while((3));
3.根据以下嵌套的if语句说给条件,填写switch语句,使它完成相同的功能。
(假设score的取值在1〜100之间。
)
if语句:
if(score<
60)k=1;
elseif(score<
70)k=2;
80)k=3;
90)k=4;
=100)k=5;
switch语句:
switch(
(1))
{
(2):
k=1;
case6:
k=2;
case7:
k=3;
case8:
k=4;
⑶:
k=5;
4.输入2个整数,输出它们的最小公倍数和最大公约数。
{intm,n,gbs,gys;
scanf(for(gbs=m;
gys=
printf(
(1));
(2);
gbs=gbs+m);
(3);
“gbs=%d\tgys=%d\n”,gbs,gys);
5.下面函数的功能是判断一个数是否为素数。
voidf(intm)
k=_⑴一for(i=2;
iv=_
(2)_;
i++)if(_(3)_)break;
if(__(4))printf("
是素数”);
elseprintf("
非素数”);
6.—个5位数,判断它是不是回文数。
即12321是回文数,个位与万位相同,十位与千位相同。
请完善程
序。
voidfun(longx)
{longge,shi,qian,wan;
wan=
(1);
qian=—(2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 题目 答案