东师C程序设计2022年春学期在线作业2【标准答案】

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2022-09-20 10:10

C程序设计19春在线作业2-0004 试卷总分:100 得分:100 一、单选题 (共 20 道试题,共 60 分) 1.设A为存放整型的一维数组,如果A的首地址为P,那么A中下标为i的元素地址为() A.P+i*2 B.P+(i-1)*2
C程序设计19春在线作业2-0004
试卷总分:100  得分:100
一、单选题 (共 20 道试题,共 60 分)
1.设A为存放整型的一维数组,如果A的首地址为P,那么A中下标为i的元素地址为()
A.P+i*2
B.P+(i-1)*2
C.P+(i-1)
D.P+i
 
2.用C语言编写的代码程序()
A.可立即执行
B.是一个源程序
C.经过编译即可执行
D.经过编译解释才能执行
 
3.t为int类型,进人下面的循环之前,t的值为0 while( t=l ) { …… } 则以下叙述中正确的是 ()
A.循环控制表达式的值为0
B.循环控制表达式的值为1
C.循环控制表达式不合法
D.以上说法都不对
 
4.设有以下语, typedef struct S { int g; char h; }T; 描述正确的是()
A.要用S定义结构体变量
B.可用T定义结构体变量
C.S是struct类型的变量
D.T是struct S类型的变量
 
5.以下程序: main() { int a=5,b=4,c=6,d; printf("%d\n",d=a>b?(a>c?a:c):(b)); } 的输出结果是()
A.5
B.4
C.6
D.不确定
 
6.以下哪项不属于C语言的宏命令()
A.条件编译
B.宏定义
C.变量声明
D.文件包含
 
7.若有说明: int i,j=7, *p=&i;, 则与i=j; 等价的语句是()
A.i= *p;
B.*p=j;
C.i=&j;
D.i=* *p;
 
8.数组名作为实参数传递给函数时,数组名被处理为()
A.该数组的长度
B.该数组的元素个数
C.该数组的首地址
D.该数组中各元素的值
 
9.若fp是指向某文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是()
A.EOF
B.-1
C.非零值
D.NULL
 
10.以下不属于算法基本特征的是()
A.有穷性
B.有效性
C.可靠性
D.有一个或多个输出
 
11.若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此 要求的函数调用是()
A.fopen("A:\user\abc.txt","r")
B.fopen("A:\\user\\abc.txt","r+")
C.fopen("A:\user\abc.txt","rb")
D.fopen("A:\\user\\abc.txt","w")
 
12.若有以下调用语句, main() { … int a[50],n; … fun(n, &a[9]); } 则不正确的fun函数的首部是()
A.void fun(int m, int x[])
B.void fun(int s, int h[41])
C.void fun(int p, int *s)
D.void fun(int n, int a)
 
13.在下列程序段中, enum color { red,yellow,blue,green,white} c1; c1=white; 枚举变量 c1的值是()
A.1
B.4
C.5
D.6
 
14.设有如下定义:int a=1,b=2,c=3,d=4,m=2,n=2;则执行表达式:(m=a>b)&&(n=c>d)后,n的值为()
A.1
B.2
C.3
D.0
 
15.在位运算中,操作数每右移一位,其结果相当于()
A.操作数乘以2
B.操作数乘以4
C.操作数除以2
D.操作数除以4
 
16.以下所列的各函数首部中,正确的是()
A.void play(var :Integer,var b:Integer)
B.void play(int a,b)
C.void play(int a,int b)
D.Sub play(a as integer,b as integer)
 
17.设有说明 int (*ptr)();其中标识符ptr是()
A.是一个指向整型变量的指针
B.它是一个指向函数值是int的函数指针
C.是一个函数名
D.定义不合法
 
18.C语言中以追加方式打开一个二进制文件操作方式参数应选择()
A.”r”
B.”w”
C.”rb”
D.”ab”
 
19.下列描述中不正确的是()
A.字符型数组中能存放字符串。
B.可以对字符型数组进行整体输入、输出。
C.可以对整型数组进行整体输入、输出。
D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。
 
20.有如下函数调用语句: func(rec1,rec2+rec3,(rec4,rec5)); 该函数调用语句中,含有的实参个数是()
A.3
B.4
C.5
D.有语法错
 
二、判断题 (共 20 道试题,共 40 分)
21.执行printf("%x",12345);, 输出 12345 。
 
22.’ab’是合法的字符型常量。
 
23.在int *p;和语句printf(“%d”, *p);中的*p含义相同。
 
24.a==b;的功能是将b的值赋给a。
 
25.x+y*z>39&&x*z||y*z是算术表达式。
 
26.在使用函数fgetc()时,文件可以“w”的方式打开。
 
27.数组名可以作为参数进行传递。
 
28.在循环过程中,使用break语句和continue语句的作用是一样的。
 
29.链表的每一个结点中必须要有一个结构体类型的指针变量用来存放下一个结点的首地址
 
30.有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。
 
31.for循环只能用于循环次数已经确定的情况。
 
32.为表示关系a>b>c,应使用C语言的表达式为:a>b&a>c。
 
33.函数若无返回值,则它一定无形参。
 
34.if-goto语句可以构成循环。
 
35.C语言中,链表和数组一样是一种静态数据类型。
 
36.strcmp用来比较两个字符串的大小。
 
37.C语言是函数式的语言。
 
38.44.while之后的表达式必须是逻辑表达式。
 
39.设有变量定义char s[]=”hello”,则strlen(s)的返回值为6。
 
40.C++源程序文件编译而成的目标代码文件的缺省扩展名为.exe。
 
Tag:  

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

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

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

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