奥鹏20春在线作业c语言,南开20春学期(809、1903、1909、2003)C语言程序设计)在线作业...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

20春学期(1709、1803、1809、1903、1909、2003)

试卷总分:100 得分:100

一、单选题 (共 40 道试题,共 80 分)

1.设有说明语句:char w;int x;float y;double z;w*x+z-y值的数据类型为( )。

A.float

B.char

C.int

D.double

qq-210969415 威-xhmcz122

2.下列函数调用中,不正确的是( )

A.max(a,b)

B.max(3,a+b)

C.max(3,5)

D.int max(a,b)

3.C语言中规定,if语句的嵌套结构中,else总是与( )配对

A.与最近的if 配套

B.与第一个if 配套

C.按缩进位置相同的if配套

D.与最近的且尚未配对的if 配套

4.以下不正确的语句为( )

A.if(x>y);

B.if(x>y){x++;y++;}

C.if(x=y)&&(x!=0)x+=y;

D.if(x!=y) scanf("%d",&x); else scanf("%d",&y);

5.以下对C语言中共用体类型数据的叙述正确的是( )

A.可以对共用体变量名直接赋值

B.一个共用体变量中可以同时存放其所有成员

C.一个共用体变量中不能同时存放其所有成员

D.共用体类型定义中不能出现结构体类型的成员

6.fwrite函数的一般调用形式是( )

A.fwrite(buffer,count,size,fp)

B.fwrite(fp,size,count,buffer)

C.fwrite(fp,count,size,buffer)

D.fwirte(buffer,size,count,fp)

7.C语言的函数中,( )。

A.必须有形参

B.形参必须是变量名

C.可以有也可以没有形参

D.数组名不能作形参

8.main( ) {int n=4;  while(n)printf("%d ",--n); } 以上程序的输出结果是( )。

A.2 0

B.3 1

C.3 2 1 0

D.2 1 0

9.fscanf函数的正确调用形式是( )。

A.fscanf(文件指针,格式字符串,输出表列)

B.fscanf(格式字符串,输出表列, fp)

C.fscanf(格式字符串,文件指针,输出表列)

D.fscanf(文件指针,格式字符串,输入表列)

10.从用户使用的角度看,函数有两种,它们是( )

A.库函数和用户自定义函数

B.库函数和主函数

C.用户自定义函数和主函数

D.主函数和子函数

11.在C语言中,int、char和short三种类型的数据在内存中所占用的字节数( )。

A.由用户自己定义

B.均为2个字节

C.是任意的

D.由所用机器的机器字长决定

12.设有如下程序 # include main() { char ch1='A',ch2='a'; printf("%c\n",(ch1,ch2)); } 则下列叙述正确的为( )

A.程序的输出结果为大写字母A

B.程序的输出结果为小写字母a

C.运行时产生错误信息

D.格式说明符的个数少于输出项的个数,编译出错

13.下列关于数组的特征错误的是( )。

A.先定义后使用

B.可以有多维

C.定义数组长度时可以用常量或变量

D.可以作参数传递

14.C语言结构体类型变量在程序执行期间( )。

A.所有成员一直驻留在内存中

B.只有一个成员驻留在内存中

C.部分成员驻留在内存中

D.没有成员驻留在内存中

15.数组名作为实参传递给形参时,数组名被处理为( )

A.该数组的长度

B.该数组的元素个数

C.该数组的首地址

D.该数组中各元素的值

16.main() {int x=2,y=-1,z=2; if(x

A.3

B.2

C.1

D.0

17.若定义语句:int a=7;float x=2.5;y=4. 7; 则表达式x+a%3*(int)(x+y)%2/4的值是( )

A.2.500000

B.2.750000

C.3.500000

D.0.000000

18.下面4个选项中,均是不合法的用户标识符的选项是( )

A.A P_0 do

B.float a0 _A

C.b-a 123 int

D._123 temp INT

19.判断字符串a是否大于b,应当使用( )

A.if (a>b)

B.if (strcmp(a,b))

C.if (strcmp(b,a)>0)

D.if (strcmp(a,b)>0)

20.若执行fopen函数时发生错误,则函数的返回值是( )

A.地址值

B.null

C.1

D.EOF

21.以下对一维整型数组 a 的正确说明是( )

A.int a(10) ;

B.int n=10,a[n];

C.int n;

D.define SIZE 10 int a[SIZE];

22.int k=1; while (k<=10); 上述语句执行后,变量k的值是( )。

A.10

B.11

C.9

D.无限循环,值不定

23.当说明一个结构体变量时系统分配给它的内存是( )

A.各成员所需内存的总和

B.结构中第一个成员所需内存量

C.成员中占内存量最大者所需的容量

D.结构中最后一个成员所需内存量

24.for (i=2; i==0; ) printf(“%d” , i--) ; 以上程序段的循环次数是( )

A.2次

B.无限次

C.0次

D.1 次

25.若已有定义int x=2; int *p=&x;则*p的值为( )

A.2

B.&x

C.*x

D.&p

26.main() { int x,y,z; scanf (“%d%d%d”,&x,&y,&z); printf(“x+y+z=%d\n”,x+y+z); } 输入数据的形式是25,13,10,则程序的输出结果是( )

A.x+y+z=48

B.x+y+z=35

C.x+z=35

D.不确定值

27.x=-1; do { x=x*x; } while (x); 以上程序段( )

A.是死循环

B.循环执行2次

C.循环执行1次

D.有语法错误

28.x=-2; y=-1; if(x!=0) if(x>0) y=1; else y=0; 该程序段的输出结果为( )。

A.1

B.0

C.-1

D.不确定

29.设以下变量均为int类型,则值不等于7的表达式是( )

A.(x= y= 6, x+y,x+1)

B.(x= y= 6,x+y,y+1)

C.(x= 6,x+1,y= 6,x+y)

D.(y=6,y+l,x = y,x+1)

30.若有以下定义语句 union data {int l; char c; float f;}a; int n;则以下语句正确的是( )

A.a=5;

B.a={2,'a',1.2};

C.printf("%d\n",a.l);

D.n=a;

31.printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式( )

A.从左起输出该字串,右补空格

B.按原字符长从左向右全部输出

C.右对齐输出该字串,左补空格

D.输出错误信息

32.若已有定义int x;下列说明指针变量p指向x的正确语句是( )

A.int p=&x;

B.int *p=&x;

C.int p=x;

D.int *p=x;

33.已有定义 int a=-2;和输出语句:printf("%8lx",a);以下正确的叙述是:

A.整型变量的输出格式符只有%d一种

B.%x 是格式符的一种,它可以适用于任何一种类型的数据

C.%x 是格式符的一种,其变量的值按十六进制输出,但%8lx 是错误的

D.%8lx 不是错误的格式符,其中数字8规定了输出字段的宽度

34.以下叙述中错误的是:

A.变量的作用域取决于变量定义语句出现的位置

B.同一程序中,全局变量的作用域一定比局部变量的作用域大

C.局部变量的作用域是在定义它的函数体内

D.全局变量的作用域是从定义位置开始至源文件结束

35.下面不正确的字符串常量是( )。

A.abc'

B."12'12"

C."0 "

D." "

36.fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是( )

A.只写

B.追加

C.读或读写

D.答案B和C都正确

37.若要打开D盘上user文件夹下名为abc.txt的文本文件进行读、写操作,符合此要求的函数调用是( )

A.fopen("D:\\user\\abc.txt","r")

B.fopen("D:\user\abc.txt","w")

C.fopen("D:\\user\\abc.txt","r+")

D.fopen("D:\user\abc.txt","rb")

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

A.在C程序中,逗号运算符的优先级最低

B.在C程序中,APH和aph是两个不同的变量

C.若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变。

D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。

39.在C语言中,char型数据在内存中的存储形式是( )

A.补码

B.反码

C.原码

D.ASCII码

40.如果在C语言中一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为( )。

A.0~255

B.0~32 767

C.0~65 535

D.0~2 147 483 647

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

41.赋值表达式c=b=a=3是错误的。( )

42.C语言采用解释方式将源程序转换为二进制的目标代码。( )

43.在Visual C中,实型数据在内存中占4个字节。( )

44.C语言中的标识符以字母或下划线开头,可跟任何字符。( )

45.在Visual C中,整型数据在内存中占2个字节。( )

46.字符型数据和整数之间是不可以通用的。( )

47.在Turbo C++中,存储字符串常数时所占内存空间是不固定。( )

48.在C语言中,字母的大小写不被区分。( )

49.对C语言中用到的任何一个变量都要规定其类型。( )

50.被main函数调用的函数只能是库函数。( )

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值