电子科技20秋C语言在线作业3,电科20秋《C语言》在线作业3题目【标准答案】

20春《C语言》在线作业3

试卷总分:100  得分:100

一、单选题 (共 20 道试题,共 100 分)

1.下面程序是从键盘输入学号,然后输出学号中百位数字是3的学号,输入0时结束循环。请选择填空() #include main() {1ong int num; scanf("%ld",&num); do { if( 【 】) printf("%ld",num); scanf("%ld",&num); }while(!num==0);}

A.num%100/10==3

B.num/100%10==3

C.num%10/10==3

D.num/10%10==3

2."文件包含"预处理语句的使用形式中,当#include后面的文件名用" ",(双引号)括起时,寻找被包含文件的方式是( )

A.直接按系统设定的标准方式搜索目录

B.先在源程序所在目录搜索,再按系统设定的标准方式搜索

C.仅仅搜索源程序所在目录

D.仅仅搜索当前目录

3.如果int a=0x3; int b=0x2; 执行运算: a<<=b; 则x的结果是

A.0

B.1

C.11

D.48

4.若有如下语句: int x=3; do { printf(" %d\n",x -=2);} while(!(--x)); 则上面程序段( )

A.输出的是 1

B.输出的是1和-2

C.输出的是3和0

D.是死循环

5.若运行以下程序时,从键盘输入ADescriptor(CR表示回车),则下面程序的运行结果是( ) #include main() { char c; int v0=0, v1=0, v2=0; do { switch(c=getchar()) {case 'a': case 'A': case 'e': case ' E' : case 'i': case 'I' : case 'o': case 'O': case 'u': case 'U': vl+=1; de

A.v0=7,v1=4,v2=7

B.v0=8,v1=4,v2=8

C.v0=11,v1=4,v2=11

D.v0=12,vl=4,v2=12

6.以下程序的正确运行结果是( ) #include int func(int a,int b); main( ) { int k=4,m=1,p; p=fun(k,m);printf(“%d,”,p); p=fun(k,m);printf(“%d\n”,p); } func(int a,int b) {static int m=0,i=2; i+=m+1; m=i+a+b; return m; }

A.8,17

B.8,16

C.8,20

D.8,8

7.若有定义:int a[2][3],则对a数组的第i行j列元素地址的正确引用为( )

A.*(a[i]+j)

B.(a+i)

C.*(a+j)

D.a[i]+j

8.C语言对嵌套 if 语句的规定是:else总是与(  )配对。

A.其之前最近的 if

B.第一个 if

C.缩进位置相同的 if

D.其之前最近且不带 else 的 if

9.下列运算符中优先级最低的是( )

A.?:

B.&&

C.+

D.!=

10.有以下程序段:int x=0,s=0; while (!x!= 0) s+=++x; printf("%d",s); 则 有以下程序段( )

A.运行程序段后输出0

B.运行程序段后输出1

C.程序段中的控制表达式是非法的

D.程序段执行无限次

11.在访问一个结构元素前你必须定义( )

A.结构体

B.结构体变量

C.定义结构指针

D.A和B

12.语句while(!E)中的表达式!E等价于( )

A.E==0

B.E!=1

C.E!=0

D.E==1

13.下关于运算符优先顺序的描述中正确的是( )

A.关系运算符< 算术运算符< 赋值运算符< 逻辑与运算符

B.逻辑 运算符< 关系运算符< 算术运算符< 赋值运算符

C.赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符

D.算术运算符< 关系运算符< 赋值运算符< 逻辑与运算符

14.对于 for(表达式1;表达式2 ;表达式3) 语句的正确描述

A.表达式2省略,循环不执行。

B.表达式3省略,可在循环体中修改循环控制变量,以保证正常退出。

C.三个表达式均不能省略。

D.三个表达式均不能省略。但分号可以省略。

15.putchar函数可以向终端输出一个( )

A.整型变量表达式值

B.实型变量值

C.字符串

D.字符或字符型变量值

16.以下程序的输出结果是( ) main() {int a=100,x =10,y=20,okl=5,ok2=0; if (x

A.1

B.0

C.-1

D.值不确定

17.设有语句int a[4][10],*p=*a;则下面表达式中属于地址表达式的是( )

A.a[1][2]

B.a[1]

C.*(p+1*10+2)

D.*(a[1]+2)

18.有以下程序,其中函数f的功能是将多个字符串按字典顺序排序 #include void f(char *p[],int n) { char *t; int i,j; for(i=0; i0){t = p[i];p[i]=p[j];p[j] =t;} } main( ) { char *p[5] ={“abc”,“aabdfg”,“abbd”,“dcdbe”,“cd”}

A.2

B.3

C.6

D.4

19.假设调用函数有以下定义和函数f调用,则函数f中对形参数组错误定义的是( ) char c[5]={‘a’,’b’,’\0’,’c’,’\0’}; printf(“%s”,c);

A.f(int array[][6])

B.f(int array[3][])

C.f(int array[][4])

D.f(int array[2][5])

20.C语言中( )存储类型的变量只在使用时分配空间

A.static 和auto

B.register和 extern

C.register和 static

D.auto 和register

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值