西北⼯业⼤学c语⾔程序设计mooc答案,西北⼯业⼤学《C语⾔
程序设计》机考
考试辅导⽼师QQ:58383878
⼀、 单选题 (共 35 道试题,共 70 分)
1. 若int i, x; 则for(i=x=0; i<9&&x!=5; i++, x++)控制的循环体将执⾏( )次。
A.10
B.9
C.5
D.6
2. 设x、y、t均为int型变量,则执⾏语句:x=y=2;t=++x||++y;后,y的值为( )。
A.不确定
编程递归函数B.2
C.3
D.1
3. 数组定义char a[10]={'a','b','c';包括了( )。个元素。
A.3
B.9
C.4
D.10
4. 在C语⾔中,函数返回值的类型最终取决于( )。
A.函数定义时在函数⾸部所说明的函数类型
C.调⽤函数时主调函数所传递的实参类型
D.函数定义时形参的类型
5. C语⾔结构体类型变量在程序运⾏期间( )。
A.TC环境在内存中仅仅开辟⼀个存放结构体变量地址的单元
B.所有的成员⼀直驻留在内存中
C.只有最开始的成员驻留在内存中
D.部分成员驻留在内存中
6. 以下有关宏替换叙述中,错误的是( )。
A.宏替换不占⽤运⾏时间
B.宏⽆类型名
C.宏替换只是字符替换
D.宏名必须⽤⼤写字母表⽰
7. 当顺利执⾏了⽂件关闭操作时,fclose函数的返回值是( )。
A.0
B.True
C.-1
D.1
8. C语⾔规定,在⼀个源程序中,main函数的位置( )。
A.必须在最开始
B.必须在系统调⽤的库函数的后⾯
C.可以任意
D.必须在最后
9. 设有 int x=8; 则表达式 (++x*1/3) 的值是( )。
A.2
B.3
C.2.6
D.0
10. 下⾯程序的输出结果是( )。
main()
{
int x=177;
printf("%o\n",x);
A.177
B.261
C.-61
D.61
11.下列程序执⾏后的输出结果是( )。
#define MA(x) x*(x+1)
main()
{
int a=2,b=3;
printf("%d \n",MA(1+a+b));
A.6
B.8
C.24
D.42
12. 已知int i, x[3][4]; 则不能将x[1][1]的值赋给变量i的语句是( )。
A.i=*(*(x+1)+1)
B.i=x[1][1]
C.i=*(*(x+1))
D.i=*(x[1]+1)
13. 以下选项中,与k=n++完全等价的表达式是( )。
A.k=n,n=n+1
B.n=n+1,k=n
C.k=++n
D.k+=n+1
14. 下⾯各选项中,均是C语⾔合法标识符的选项组是( )。
A.33 we auto
B._23 me _3ew
C._43 3e_ else
D.ER -DF 32
15. C语⾔程度的基本单位是( )。
A.函数
B.标识符
C.表达式
D.语句
16. 若fp是指向某⽂件的指针,且已读到此⽂件末尾,则库函数feof(fp)的返回值是( )。
A.EOF
B.0
C.⾮零值
D.NULL
17. 已知字母A的ASCII代码值为65,若变量kk为char型,以下不能正确判断出kk中的值为⼤写字母的表达式是( )。
A.kk>=′A′&& kk<=′Z′
B.!(kk>=′A′︱︱kk<=′Z′)
C.(kk+32)>=′a′&&(kk+32)<=′Z′
D.isalpha(kk)&&(kk<91)
18. 在下列结论中,只有⼀个是正确的,它是( )。
A.递归函数中的形式参数是⾃动变量
B.递归函数中的形式参数是外部变量
C.递归函数中的形式参数是静态变量
D.递归函数中的形式参数可以根据需要⾃⼰定义存储类型
19. 已知double *p[6]; 它的含义是( )。
A.p是指向double类型变量的指针
B.p是double类型数组
C.p是指针数组
D.p是数组指针
20. 以下选项中,不能作为合法常量的是( )。
A.1.234e04
B.1.234e0.4
C.1.234e+4
D.1.234e0
21. 在C语⾔中,只有在使⽤时才占⽤内存单元的变量,其存储类型是 ( )。
A.auto和register
<和register
C.auto和static
D.static和register
22. 已知static int a[2][3]={2,4,6,8,10,12; 正确表⽰数组元素地址的是( )。
A.*(a+1)
B.*(a[1]+2)
C.a[1]+3
D.a[0][0]
23. 以下叙述中错误的是( )。
A.改变函数形参的值,不会改变对应实参的值
B.函数可以返回地址值
C.可以给指针变量赋⼀个整数作为地址值
D.当在程序的开头包含头⽂件stdio.h时,可以给指针变量赋NULL
24. 已知字符′A′的ASCII码值是65,字符变量cl的值是′A′,c2 的值是′D′。执⾏语句printf("%d,%d",c1,c2-2);后,输出结果是( )。
A.A,B
B.A,68
C.65,66
D.65,68
25. 在while(x)语句中的x与下⾯条件表达式等价的是( )。
A.x==0
B.x==1
C.x!=1
D.x!=0
26. 以下叙述中错误的是( )。
A.计算机不能直接执⾏⽤C语⾔编写的源程序
B.C程序经C编译程序编译后,⽣成后缀为.obj的⽂件是⼀个⼆进制⽂件
C.后缀为.obj的⽂件,经连接程序⽣成后缀为.exe的⽂件是⼀个⼆进制⽂件
D.后缀为.obj和.exe的⼆进制⽂件都可以直接运⾏
27. 有以下程序
main()
{ int i,s=1;
for (i=1;i<50;i++)
if(!(i%5)&&!(i%3)) s+=i;
printf("%d\n",s);
A.409
B.277
C.1
D.91
28. 下⾯程序的输出结果是( )。
main()
{ int x=5,y=9,z=1,t;
t=(x>y||x>z);
printf("%d\n",t);
A.1
B.0
C.5
D.3
29. 若变量已正确定义,有以下程序段
i=0;
do printf("%d,",i);while(i++);
printf("%d\n",i);
其输出结果是( )。
A.0,0
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论