M1C语言模拟试题一分析文档格式.docx
《M1C语言模拟试题一分析文档格式.docx》由会员分享,可在线阅读,更多相关《M1C语言模拟试题一分析文档格式.docx(21页珍藏版)》请在冰点文库上搜索。
A.x%2==0/*如4%2==0
(1)5%2==0(0)
B.!
x%2!
=0/*如!
4%2!
=0(0)!
5%2!
=0(0)(优先级:
!
->
%->
!
=)
C.2*x/2-x==0
D.!
(x%2)
B?
4、设
b=2;
表达式b/(b*2)的值是_______.
A.0
B.0.5
C.0.500000
D.0.00000
5、设x、y、z和k都是int型变量,则执行表达式:
x=(y=4,z=16,k=32)后,x的值为_____.
A.4
B.16
C.32
D.52
C
6、若有以下定义和语句:
int
u=010,v=0x10,w=10;
printf(″%d,%d,%d\n″,u,v,w);
则输出结果是:
A.8,16,10
B.10,10,10
C.8,8,10
D.8,10,10
7、若有以下说明和语名:
a=5
a++;
此处表达式a++的值是____
A.7
B.6
C.5
8、若执行下面的程序从键盘输入3和4,则输出是_______
{
a,b,s;
scanf("
%d%d"
&
a,&
b);
s=a;
if
(a
<
b)
s=b;
s=s*s;
printf("
s);
}
A.14
C.18
D.20
B
9、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系
的表达式为________。
A.a<
>
0
a
C.a=0
D.a!
=0
10、执行语句:
for(i=1;
i++<
4;
)后;
变量i的值是( )
B.4
D.不定
11、执行语句:
for
(i=1;
i++
4;
变量i的值是
12、已知字母A的ASCⅡ码为十进制的65,下面程序的输出是
char
ch1,ch2;
ch1='
A'
+'
5'
-'
3'
ch2='
6'
%c,%c\n"
c1,c2);
A.67,D
B.B,C
C.C,D
D.ch2='
13、下列程序执行后的输出结果是
arr[2][4];
strcpy(arr[0],"
you"
);
strcpy(arr[1],"
me"
arr[0][3]='
&
'
%s
\n"
arr);
A.you&
me
B.you
C.me
D.err
14、下列程序执行后的输出结果是
#define
MA(x)
x*(x-1)
a=1,b=2;
%d
MA(1+a+b));
}/*1+1+2*(1+1+2-1)=8
A.6
B.8
C.10
D.12
15、以下程序运行后,输出结果是
s[]="
abcde"
;
s+=2;
//errorC2106:
'
+='
:
leftoperandmustbel-value
%ld\n"
,s);
A.cde
B.字符c的ASCII码值
C.字符c的地址
D.出错
16、i、j已定义为int类型,则以下程序段中内循环体的总的执行次数是
for
(i=5;
i;
i--)/*i=5、4、3、2、1*/
for(j=0;
j
j++){…}
A.20
B.24
C.25
D.30
17、执行下面语句后的输出为(
)
i=
-1;
if
(i
=0)printf("
****\n"
)
else
%%%%\n"
A.****
B.%%%%
C.%%%%C
D.有语法错,不能执行
D(else前缺少;
18、语句:
12&
12);
的输出结果是
A.12
B.1
C.24
D.0
19、以下说法中正确的是(
A.C语言程序总是从第一个的函数开始执行
B.在C语言程序中,要调用的函数必须在main()函数中定义
C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须放在程序的开始部分
20、下述对C语言字符数组的描叙不正确的是(
A.字符数组可以存放字符串
B.字符数组中的字符串可以整体输入、输出
C.可以在赋值语句中通过赋值运算符"
="
对字符数组整体赋值
D.不可以用关系运算符对字符数组中的字符串进行比较
21、C程序是(
A.按顺序执行的
B.从Main函数开始
C.从函数体开始
D.任意语句
22、下列语句正确的是(
A.if(a>
b>
c)temp=a
B.if((a=b)>
0)temp=a
C.inta=b=c=4
D.inta;
scanf(%d,a)
23、以下关于字符串的不正确说法是(
A.字符串长度就是字符串中字符的个数
B.字符串的尾部会自动追加一个"
字符串结束标志"
C.字符串的长度为字符个数加1
D.在C语言中常用字符型数组来存放字符串
24、以下正确的说法是:
在C语言中
A.实参和与其对应的形参各占用独立的存储单元
B.实参和与其对应的形参共占用一个存储单元
C.只有当实参和与其对应的形参同名时才共占用存储单元
D.形参是虚拟的,不占用存储单元
25、以下不正确的if语句形式是
A.if(x>
y&
x!
=y)t=x++;
B.if(x==y)x+=y;
C.if(x!
=y)scanf("
%d"
x)elsescanf("
y);
D.if(x<
>
C?
?
26、请阅读以下程序:
{
a=5,b=0,c=0;
if(a==b+c)
***\n"
else printf("
$$$\n"
以上程序
A.有语法错不能通过编译
B.可以通过编译但不能通过连接
C.输出***
D.输出$$$
27、以下不正确的说法是:
C语言规定
A.实参不可以是常量,变量或表达式
B.形参可以是常量,变量或表达式
C.实参可以为任何类型
D.形参应与其对应的实参类型一致
28、若有语句:
s1[]="
string"
s2[8],*s3,*s4="
string2"
则对库函数strcpy的错误调用是
A.strcpy(s1,"
B.strcpy(s4,"
string1"
C.strcpy(s3,"
//指针s3没有指向
D.strcpy(s1,s2);
29、假定x和y为double型,则表达式x=2,y=x+3/2的值是
A.3.500000
B.3
C.2.000000
D.3.000000(3/2=1作为整型数据运算,应为:
3.0/2.0)
D
30、以下程序的输出结果是
c='
z'
%c"
c-25);
A.a
B.Z
C.z-25
D.y
A
31、有如下程序
x=23;
do
x--);
while(!
x);
该程序的执行结果是
A.321
B.23
C.不输出任何内容
D.陷入死循环
32、设有说明语句:
a='
\72'
则变量a
A.包含1个字符
B.包含2个字符
C.包含3个字符
D.说明不合法
33、有如下程序段
a=14,b=15,x;
x=(a&
b)&
(c<
B'
执行该程序段后,x的值为
A.ture
B.false
C.0
D.1
34、有如下程序
ABCD"
*P;
for(p=s+l;
p
s+4;
p++)
printf
("
%s\n"
p);
//p:
1~3
该程序的输出结果是
A.ABCDBCDCDD
B.ABCD
C.BCD
D.BCDCDD
35、
设有
x=11;
则表达式
(x++
*
1/3)
的值是
A.3(11*1/3取整=3)
C.11
36、请选出正确的程序段
A)
*p;
B)
*s,
k;
scanf("
*s=100;
… …
C)
D)
*p,
c;
e;
s=&
p=&
*p='
a'
s=p;
… *s=1;
…
A.
B.
C.
D.
37、下列程序执行后的输出结果是
void
func1(int
i);
func2(int
st[]="
hello,friend!
"
i)
st[i]);
if(i<
3){i+=2;
func2(i);
func1(i);
i=0;
A.hello
B.hel
C.hlo
D.hlm
38、算法的表示方法有( )。
A.自然语言,传统流程图,N-S流程图,伪代码,计算机语言
B.高级语言,汇编语言,机器语言
C.C语言,QBASIC语言,InterDev
D.图形图像法,描述法,编程法
E.计算机语言
39、设有定义:
“long
x=-123456L;
”,以下能正确输出变量x的的语句是( )
A.printf("
x=%d\n"
x);
B.printf("
x=%ld\n"
C.printf("
x=%8dl\n"
D.printf("
x=%LD\n"
40、合法的C语言赋值语句是( )
A.a=b=1
B.k=int(a+b);
C.a=1,b=2
D.--i;
填空题:
1、一球从100m高度自由落下,每次落地后又回跳到原高度的一半,再落下,
求它在第10次落地时共经过多少m?
第10次反弹多高?
程序如下:
main()
{floatSn=100,hn=Sn/2;
intn;
for(n=2;
n<
=100;
n++)(应为n<
=10)?
{(a)__________;
(b)___________;
}
printf("
第10次落地时共经过%fm\n"
Sn);
第10次反弹%fm\n"
hn);
Sn=Sn+2*hn,hn=hn/2
2、程序的功能:
从键盘输入若干学生的成绩,统计并输出最高成绩和
最低成绩,当输入负数时结束输入
{floatx,amax,amin;
%f"
amax=x;
amin=x;
while__1__
{if(x>
amax)amax=x;
if(__2__)amin=x;
printf("
\namax=%f\namin=%f\n"
amax,amin);
x>
=0.0或x>
=0或!
(x<
0)或!
0.0),x<
AMIN或X<
=AMIN
3、下面程序的功能是:
将字符数组a中下标值为偶数的元素从小到大排列,其
它元素不变。
请填空。
#include
main()
{chara[]="
clanguage"
t;
inti,j,k;
k=strlen(a);
i<
=k-2;
i+=2)
for(j=i+2;
j<
=k;
_______
(1)__________)
if(_________
(2)__________)
{t=a[i];
a[i]=a[j];
a[j]=t;
}
puts(a);
j=j+2,a[i]>
a[j]
4、用来引用特定数组元素的数字称为____.
下标
5、求下面算术表达式的值
1)x+a%3*(int)(x+y)%2/4(注:
1/4=0)
设x=2.5,a=7,y=4.7
2)(float)(a+b)/2+(int)x%(int)y(5.0/2+3%2=2.5+1=3.5)
设a=2,b=3,x=3.5,y=2.5
2.5,3.5
6、设x和y均为int型变量,且x=1,y=2,则以下表达式:
0+x/y的值为___。
7、当a=3,b=2,c=1时,表达式f=a>
c的值是_________
8、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
scanf,printf
9、若a,b和c均是int型变量,则计算表达式后,
a值为______,b值为______,c值为__________
a=(b=4)+(c=2)
6,4,2
10、若从键盘输入58,则以下程序输出的结果是________。
{inta;
a);
if(a>
50)printf("
a);
40)printf("
30)printf("
585858
11、以下程序的输出结果是___________
{inta=1,b=2;
a=a+b;
b=a-b;
a=a-b;
%d,%d\n"
a,b);
2,1
12、下列程序段的输出结果是_____________。
intn='
c'
switch(n++)
{default:
printf("
error"
break;
case'
:
b'
good"
C'
pass"
d'
D'
warm"
passwarm
13、要使以下程序段输出10个整数,请填入一个整数。
i<
=____________;
i+=2));
18
14、
若输入字符串:
abcde<
回车>
则以下while循环体将执行___________次。
while((ch=getchar())=='
e'
)printf("
*"
15、下面程序的输出结果是__________。
﹟include﹤stdio.h﹥
voidmain()
{
inti=﹣200,j=25;
%d,%d"
,i,j);
i=%d,j=%d﹨n"
-200,25,i=-200,j=25
16、使用强制转换方法将正整数转换成字符。
本题程序如下:
charc;
intI;
,&
I);
c=("
%c的ASCII码为%d﹨n"
,c,I);
本程序的执行结果为___________。
a的ASCII码为97
程序设计题:
1、编程序求1+3+5+7+9+…这样的数之和。
如果累加数大于750时,则程序终止并输出结果。
inti=1,sum=0;
while(sum<
=750)
sum=sum+i;
i=i+2;
\n%d"
sum);
参考答案:
784
2、编写程序,求在10~1000之间所有能被4除余2,被7除余3,被9除余5的数之和。
main()
{longs=0;
intm;
for(m=10;
m<
=1000;
m++)
if(m%4==2&
m%7==3&
m%9==5)
s=s+m;
本题参考答案:
2000
3、一只猴子一天从山上摘来一袋桃子,从这天开始,它每天都要把袋中的桃子平分为二堆,吃掉其中的一堆,然后再从剩下的桃中拿出一个解谗,等到第10天,它发现袋中只有一只桃可吃啦,问猴子总共摘了多少桃。
inti,num;
inttemp=1;
for(i=9;
i>
0;
i--)
{num=(temp+1)*2;
temp=num;
num);
本题答案为:
1534