南开21秋学期《C语言程序设计》在线作业[答案]

作者:奥鹏作业答案 字体:[增加 减小] 来源:南开在线 时间:2021-11-27 08:54

21秋学期(1709、2103、2109、1903、1909、2003、2009、2103、2109)《C语言程序设计》在线作业 试卷总分:100 得分:100 一、单选题 (共 40 道试题,共 80 分) 1.判断字符串a是否大于b,应当使用( ) A.if (ab) B.if

南开21秋学期《C语言程序设计》在线作业[答案]

南开21秋学期《C语言程序设计》在线作业[答案]答案

21秋学期(1709、2103、2109、1903、1909、2003、2009、2103、2109)《C语言程序设计》在线作业

试卷总分:100  得分:100

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

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

A.if (a>b)

B.if (strcmp(a,b))

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

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

正确答案:-----

正确答案:-----

 

2.在 C 语言中,引用数组元素时,其数组下标的数据类型允许是( )。

A.整型常量

B.整型表达式

C.整型常量或整型表达式

D.任何类型的表达式

正确答案:-----

 

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

A.由用户自己定义

B.均为2个字节

C.是任意的

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

正确答案:-----

 

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

A.与最近的if 配套

B.与第一个if 配套

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

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

正确答案:-----

 

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

A.10

B.11

C.9

D.无限循环,值不定

正确答案:-----

 

6.下列哪个是读写文件出错检测函数( )。

A.ferror

B.clearerr

C.feof

D.fwrite

正确答案:-----

 

7.struct person {char name[9]; int age;}; struct person class[10]={"John",17,"Paul",19,"Mary"21,"adam",16}; 根据上面的定义,能打印出字母M的语句是( )。

正确答案:-----

A.printf("%c ",class[3].name);

B.printf("%c ",class[3].name[1]);

C.printf("%c ",class[2].name[1]);

D.printf("%c ",class[2].name[0])

正确答案:-----

 

8.若有定义char str[]= “very good”,则str的长度为( )

正确答案:-----

A.8

B.9

C.10

D.11

正确答案:-----

 

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

正确答案:-----

A.是死循环

B.循环执行2次

C.循环执行1次

D.有语法错误

正确答案:-----

 

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

A.1

B.0

C.-1

D.不确定

正确答案:-----

 

11.#include “stdio.h” void main() { int sum=0,a=1; while(a<=10) {sum=sum+a; a++; } printf(“sum=%d ”,sum); } 以上程序段的运行结果是( )

正确答案:-----

A.sum=0

B.sum=55

C.sum=10

D.sum=11

正确答案:-----

 

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

A.if (a>b)

B.if (strcmp(a,b))

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

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

 

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

A.只写

B.追加

C.读或读写

D.答案B和C都正确

正确答案:-----

 

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

正确答案:-----

A.2 0

B.3 1

C.3 2 1 0

D.2 1 0

正确答案:-----

 

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

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

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

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

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

正确答案:-----

 

16.C程序的执行从哪里开始( )

A.第一条语句

B.第一个函数

C.最后一个函数

D.主函数

正确答案:-----

 

17.若调用fputc函数输出字符成功,则其返回值是( )

A.EOF

B.1

C.0

D.输出的字符

正确答案:-----

 

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

A.abc'

B."12'12"

C."0 "

D." "

正确答案:-----

 

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

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

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

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

D.输出错误信息

正确答案:-----

 

20.已知p,p1为指针变量,a为数组名,i为整型变量,下列赋值语句中不正确的是( )

A.p=&i

B.p=p1

C.p=&a[i]

D.p=10

正确答案:-----

 

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

A.该数组的长度

B.该数组的元素个数

C.该数组的首地址

D.该数组中各元素的值

正确答案:-----

 

22.当不能正确执行文件关闭操作时,fclose函数的返回值是( )。

A.-1

B.EOF

C.TRUE

D.1

正确答案:-----

 

23.若有以下定义语句:int a[10]={1,2,3,4,5,6,7,8,9,10}; 则下列哪个是对该数组元素的正确引用( )

A.a[10]

B.a[a[3]-5]

C.a[a[9]]

D.a[a[4]+4]

正确答案:-----

 

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

正确答案:-----

A.float

B.char

C.int

D.double

正确答案:-----

 

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

A.必须有形参

B.形参必须是变量名

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

D.数组名不能作形参

正确答案:-----

 

26.#include<stdio.h> main() {union { long a; int b; char c;}m; printf("%d ",sizeof(m));} 以上程序的运行结果是( )。

正确答案:-----

A.2

B.4

C.6

D.8

正确答案:-----

 

27.若定义语句: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

正确答案:-----

 

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

A.地址值

B.null

C.1

D.EOF

正确答案:-----

 

29.putchar函数可以向终端输出一个:

A.整型变量表达式值

B.实型变量值

C.字符串

D.字符或字符型变量值

正确答案:-----

 

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

A.A P_0 do

正确答案:-----

B.float a0 _A

C.b-a 123 int

D._123 temp INT

正确答案:-----

 

31.下面正确的字符常量是( )

A."c"

B.""

C.'W'

D.''(中间没有空格)

正确答案:-----

 

32.已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2='A'+'6'-'3';后,c2中的值为( )

A.D

B.68

正确答案:-----

C.不确定的值

D.C

正确答案:-----

 

33.main() {struct date {int year,month,day;}today; printf("%d ",sizeof(struct date));} 以上程序的运行结果是( )

正确答案:-----

A.6

B.8

C.10

D.12

正确答案:-----

 

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

A.int p=&x;

B.int *p=&x;

C.int p=x;

D.int *p=x;

正确答案:-----

 

作业咨询:
点击这里给我发消息

论文咨询:
点击这里给我发消息

合作加盟:
点击这里给我发消息

服务时间:
8:30-24:00(工作日)