本科C语言模拟二(含答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、单选题:(每题1.5分,共60分)
1、C程序是( )
A.顺序执行
B.从Main函数开始
C.从函数体开始
D.任意语句
答案:B
2、以下说法中正确的是( )。
A.C语言程序中是从第一定义的函数开始执行
B.在C语言程序中,要调用的函数必须在main()函数中定义
C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须放在程序的开始部分
答案:C
3、算法的表示方法有________。
A.自然语言,传统流程图,N-S流程图,伪代码,计算机语言
B.高级语言,汇编语言,机器语言
C.C语言,QBASIC语言,InterDev
D.图形图像法,描述法,编程法
E.计算机语言
答案:A
4、以下选项中,非法的字符常量是( )
A.'\t'
B.'\17'
C."n"
D.'\xaa'
答案:C
5、以下所列的C语言常量中,错误的是
A.0xFF
B.1.2e0.5
C.2L
D.'\72'
答案:B
6、下列变量名合法的是( )
A.#1
B.$567
C.a-b
D.m_number
答案:D
7、下面四个选项中,均是不正确的八进制数或十六进制数的选项是
A.016 0x8f 018
B.0abc 017 0xa
C.010 -0x11 0x16
D.0a12 7ff -123
答案:D
8、sizeof(float)是
A.一个双精度型表达式
B.一个整型表达式
C.一种函数调用
D.一个不合法的表达式
答案:B
9、C语言中,double类型数据占( )个字节,char类型数据占( )个字节
A.1
B.2
C.4
D.8和1
答案:D
10、当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是
A.c=b=a;
B.(a=c) ‖(b=c) ;
C.(a=c) &&(b=c);
D.a=c=b;
答案:C
11、若已定义x和y为double型,则表达式:x=1,y=x+3/2的值是( )
A.1
B.2
C.2.0
D.2.5
答案:C
12、执行语句x=(a=3,b=a--)后x,a,b的值为;
A.3 3 2
B.3 2 2
C.3 2 3
D.2 3 2
答案:C
13、语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是
A.a\bre\'hi\'y\\\bou
B.a\bre\'hi\'y\bou
C.re'hi'you
D.abre'hi'y\bou
答案:C
14、在下列运算符中,优先级别最高的是
A.<=
B.=
C.%
D.&&
答案:C
15、若执行下面的程序时从键盘上输入3和4,则输出是
main()
{
int a,b,s;
a=3,b=4;
scanf("%d%d",&a,&b);
s=a+b;
printf("%d\n",s--);
printf("%d\n,--s);
}
A.7,7
B.7,5
C.6,7
D.7,6
答案:B
16、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是( )。 #include
main()
{ int x;
seanf(”%d”,&x);
if(x++>5)printf(”%d”,x);
else printf(”%d\n”,x--);}
A.7和5
B.6和3
C.7和4
D.6和4
答案:A
17、设a、b、C、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a > b)&&(n=c > d)运算后,n的值为:
A.0
B.1
C.2
D.3
答案:C
18、逻辑运算符两侧运算对象的数据类型
A.只能是0或1
B.只能是0或非0正数
C.只能是整型或字符型数据
D.可以是任何类型的数据
答案:D
19、表示关系X < =Y < =Z的C语言表达式为________。
A.(X < =Y)&&(Y < =Z)
B.(X < =Y)AND(Y < =Z)
C.(X < =Y < =Z)
D.(X < =Y)&(Y < =Z)
答案:A
20、判断字符型变量x是否是大写字母的正确的表达式______.
A.'A'<=x<='Z'
B.(x>=A)&&(x<=Z)
C.('A'<=x)&&('Z'=>x)
D.(x>='A')&&(x<='Z')
答案:D
21、有如下程序
main0
{ int x=1,a=0,b=0;
switch(x){
case 0: b++;
case 1: a++
case 2: a++;b++
}
printf("a=%d,b=%d\n",a,b);
}
该程序的输出结果是
A.a=2,b=1
B.a=1,b=1
C.a=1,b=0
D.a=2,b=2
答案:A
22、已知 int x=10,y=20,z=30;以下语句执行后x,y,z的值是if(x>y)
z=x;x=y;y=z;
A.x=10,y=20,z=30
B.x=20,y=30,z=30
C.x=20,y=30,z=10
D.x=20,y=30,z=20
答案:B
23、以下程序的输出结果是
main()
{int a=100,x=10,y=20,ok1=5,ok2=0;
if(x < y)
if(y!=10)
if(!ok1)
a=1;
else
if(ok2) a=10;
a=-1;