c语言中6%19的结果是,西安交通大学19年5月补考《程序设计基础(高起专)》作业考核试题【参考答案】...

西安交通大学19年5月补考《程序设计基础(高起专)》作业考核试题-0001

试卷总分:100    得分:0

一、 单选题 (共 30 道试题,共 60 分)

1.以下选项中,与k=n++完全等价的表达式是()。

A.k=n,n=n+1

B.n=n+1,k=n

C.k=++n

D.k+=n+1

2.以下只有在使用时才为该类型变量分配内存的存储类说明是()。

A.auto和static

B.auto和register

C.register和static

D.extern和register

3.double x;scanf("%lf",&x);不可以赋值给x变量的常量是()。

A.123

B.100000

C.A'

D."abc"

4.设有说明.char w;int x;float y;double z;则表达式w*x+z-y值的数据类型为()。

A.float

B.char

C.int

D.double

5.下面程序#include "stdio.h"void main(){ int k=2,m=4,n=6; int *pk=&k,*pm=&m,*p; *(p=&n)=*pk*(*pm); printf("%d\n",n); getch();}的运行结果是( )

A.7

B.8

C.9

D.10

6.有如下程序, 该程序的输出的结果是( )int addc(int a,int b,int c) { c=a+b;return(c); } main() { int x=4,y=2,z,r; z=x+y;r=addc(addc(x,y,z),addc(y,z,x),z);printf("%d\n",r); }

A.36

B.12

C.14

D.6

7.下面有关for循环的正确描述是()。

A.for循环只能用于循环次数已经确定的情况

B.for循环是先执行循环循环体语句,后判断表达式

C.在for循环中,不能用break语句跳出循环体

D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

8.关于switch语句说法不正确的是( )

A.case的次序不影响执行结果

B.每个case语句后面的常量可以不同

C.在执行完一个case语句后转到下一个case语句执行

D.每个case语句后面表达式只能是常量

9.若有int i=3,*p;p=&i;下列语句中输出结果为3的是()。

A.printf("%d",&p);

B.printf("%d",*i);

C.printf("%d",*p);

D.printf("%d",p);

10.以下标识符中,不能作为合法的C用户定义标识符的是()。

A.putchar

B._double

C._123

D.INT

11.以下选项中不属于C语言的类型的是( )

A.signed short int

B.unsigned long int

C.unsigned int

D.long short

12.字符数组char a[]=”How do you do?”;的大小为( )

A.10

B.11

C.14

D.15

13.逻辑运算符两侧运算对象的数据类型()。

A.只能是0或1

B.只能是0或非0正数

C.只能是整型或字符型数据

D.可以是任何类型的数据

14.已知x=43,ch='A',y=0;则表达式(x>=y&&ch

A.0

B.语法错

C.1

D."假"

15.若int i=10;执行下列程序后,变量i的正确结果是( )switch ( i ) {case 0: i+=1;case 10: i+=1;case 11: i+=1;default: i+=1;}

A.10

B.11

C.12

D.13

16.int a[10]={1,2,3,4,5,6,7,8};int *p;p=&a[5];p[-3]的值是()。

A.2

B.3

C.4

D.不一定

17.下列四个选项中,均是C语言关键字的选项是()。

A.auto、enum、include

B.switch、typedef、continue

C.signed、union、scanf

D.if、struct、type

18.以下叙述不正确的是()。

A.一个C源程序可由一个或多个函数组成

B.一个C源程序必须包含一个main函数

C.C程序的基本组成单位是函数

D.在C程序中,注释说明只能位于一条语句的后面

19.以下运算符中,优先级最高的运算符是()。

A.=

B.!=

C.*(乘号)

D.()

20.以下程序的输出结果是( )int f(){static int i=0;int s=1;s+=i; i++;return s;}main(){ int i,a=0;for(i=0;i<5;i++) a+=f();printf("%d\n",a);}

A.20

B.24

C.25

D.15

21.若有下列定义和语句,则对a数组元素的非法引用是()。Int a[2][3],(*pt)[3];pt=a;

A.pt[0][0]

B.*(pt+1)[2]

C.*(pt[1]+2)

D.*(a[0]+2

22.若有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为()。

A.printf("%d",*(a+5));

B.printf("%d",p[5]);

C.printf("%d",*(p+5));

D.printf("%d",*p[5]);

23.已知int j,i=1;执行语句“j=i++;”后,变量i的值是( )

A.1

B.2

C.-1

D.-2

24.在计算机中,一个字节所包含二进制位的个数是( )

A.2

B.4

C.8

D.16

25.每条C语句后面都要有一个( )

A.逗号

B.冒号

C.分号

D.括号

26.int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为()。

A.1

B.2

C.3

D.不一定

27.下列程序段的输出结果为()。Float k=0.8567;printf("%06.1d%%",k*100);

A.0085.6%%

B.0085.7%%

C.0085.6%

D..857

28.以下数值中,不正确的八进制数或十六进制数是()。

A.0x16

B.016

C.-1

D.0xaaaa

29.有如下的数组 static int a[10]; 则( )

A.该数组没有被初始化

B.数组的所有元素都被赋值为0

C.数组的第一个元素是a[1]

D.数组共有11个元素

30.以下语句中,不能实现回车换行的是()。

A.printf("\n");

B.putchar("\n");

C.fprintf(stdout,"\n");

D.fwrite("\n",1,1,stdout);

二、 多选题 (共 10 道试题,共 20 分)

1.计算机算法可以分为两大类( )

A.数值运算算法

B.非数值运算算法

C.符号运算算法

D.非符号运算算法

2.以下不合法的赋值语句是()。

A.x=y=100

B.d--;

C.x+y;

D.c=int(a+b);

3.以下4个选项中,可以看作是一条语句的有()。

A.{;}

B.a=0,b=0,c=0;

C.if(a>0);

D.if(b==0)m=1;n=2;

4.下列为c语言的关键字是()

A.if

B.struct

C.union

D.Int

5.以下叙述正确的是()。

A.预处理命令行都必须以"#"开始

B.在程序中凡是以"#"开始的语句行都是预处理命令行

C.C程序在执行过程中对预处理命令行进行处理

D.#defineABCD是正确的宏定义

6.以下合法的十六进制数是()。

A.oxff

B.0Xabc

C.0x01

D.0X9X

7.关于while语句与do-while语句,以下正确的是()。

A.while是当型结构

B.do-while是直到型结构

C.两者有区别

D.两者无区别

8.以下选项中不合法的字符常量是()。

A."B"

B.'\010'

C.68

D.D

9.t为int类型,进入下面的循环之前,t的值为0do{………}while(t==1);则以下叙述中正确的是()

A.循环控制表达式的值为0

B.循环控制表达式的值为1

C.循环控制表达式合法

D.以上说法都不对

10.关于for(表达式1,表达式2,表达式3)循环,以下正确的是()。

A.三个表达式都不可省略

B.表达式1可以省略

C.表达式2可以省略

D.表达式3可以省略

三、 判断题 (共 10 道试题,共 20 分)

1.若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是p=n;。()

A.错误

B.正确

2.continue语句可用于switch语句,也可用于for、while和do循环语句中。()

A.错误

B.正确

3.一个C源程序可以由一个main()函数和若干个其它函数组成。()

A.错误

B.正确

4.C语言的文件存取方式只能是顺序存取,不能随机存取。()

A.错误

B.正确

5.表达式 ’a’ 和 “a” 是不同的,前者长度为1,后者长度为2。()

A.错误

B.正确

6.若有static int a[10];则a数组的10个元素的值都是0。()

A.错误

B.正确

7.break语句可用于switch语句,也可用于for、while和do循环语句中。()

A.错误

B.正确

8.数组名是指标常量,不需要也不能为其赋值;指针是变量,使用前需对其赋值。()

A.错误

B.正确

9.在C中能代表逻辑值“假”的是0。()

A.错误

B.正确

10.用户标识符中可以出现下划线和中划线(减号)。()

A.错误

B.正确

(责任编辑:admin)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值