国开24春《C语言程序设计》形考【参考答案】C语言程序设计
若需要定义一个符号常量,并且使C语言能够进行类型检查,则应在定义语句的开始使用保留字const。
对
错
运算符优先级最高的是( )
A. =
B. *=
C. &&
D. !=
C语言中打开一个数据文件的系统函数为( )。
a. fgetc()
b. fputc()
c. fclose()
d. fopen()
C语言中的标准输入和输出设备文件都属于字符文件。
对
错
C语言中的每条复合语句以花括号作为结束符。
对
错
C语言中的每条简单语句以分号作为结束符。
对
错
C语言程序中的基本功能模块为( )。
A. 表达式
B. 标识符
C. 语句
D. 函数
C语言系统中提供一个用来描述文件属性的类型标识符为FILE。
对
错
NULL是一个符号常量,通常作为空指针值,它代表的值为0。
对
错
float的类型长度为8。
对
错
for语句能够被改写成的语句是( )。
a. 复合
b. if
c. switch
d. while
strcmp函数用于进行两个字符串之间的比较。
对
错
strcpy函数用于把一个字符串拷贝到另一个字符数组空间中。
对
错
x>0 && x<=10的相反表达式为( )。
A. x<=0 || x>10
B. x<=0 && x>10
C. x<=0 || x<=10
D. x>0 && x>10
一个二维字符数组a[10][20]能够存储的每个字符串的长度不超过20。
对
错
一个二维字符数组a[10][20]能够最多存储9个字符串。
对
错
一个磁盘数据文件的文件名由文件主名和扩展名所组成,其中间用圆点分开。
对
错
下面循环语句执行结束后输出的i值为( )。
for(int i=0; i<n; i++) if(i>n/2) {cout<<i<<endl; break;}国开形考答案联系QQ/微信:18866732
a. n/2
b. n/2+1
c. n/2-1
d. n-1
不符合C语言规定的复合语句是( )。
A. {}
B. {;}
C. {x=0;}
D. {y=10}
与结构成员访问表达式(*fp).score等价的表达式是fp->score。
对
错
与结构成员访问表达式x.name等价的表达式为( )。
a. x->name
b. &x->name
c. (&x)->name
d. (*x)->name
为了存储一个长度为n的字符串,所使用的字符数组的长度至少为n+1。
对
错
为了结束本层循环类语句或switch语句的执行过程,在语句体中需要使用break语句。
对
错
从一个数据文件中读入以换行符结束的一行字符串的系统函数为( )。
a. gets()
b. fgets()
c. getc()
d. fgetc()
使用const语句定义一个符号常量时,不必对它进行初始化。
对
错
使用“typedef char BB[10][50];”语句定义标识符BB为含有10行50列的二维字符数组类型。
对
错
使用一个结构类型时,必须一起使用关键字struct和类型标识符。
对
错
假定a为一个数组名,在下面的表达式中,存在语法错误的是( )。
a. a[i]
b. *a++
c. *a
d. *(a+1)
假定a是一个指针数组,则a+i所指对象的地址比a地址大4*i字节。
对
错
假定k是一个double类型的变量,则定义变量p的正确语句为( )。
a. double p=&k;
b. int *p=&k;
c. double &p=*k;
d. char *p=”Thank you!”;
假定p所指对象的值为25,p+1所指对象的值为46,则*++p的值为25。
对
错
假定p所指对象的值为25,p+1所指对象的值为46,则*p++的值为46。
对
错
假定p所指对象的值为25,p+1所指对象的值为46,则执行*(p++)运算后,p所指对象的值为46。
对
错
假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址增加的字节数为( )。
a. 1
b. 2
c. 4
d. 8
假定x=5,则执行“a=(x?10:20);”语句后a的值为10。
对
错
假定x=5,则执行“y=++x;”语句后,y的值为6。
对
错
假定x=5,则执行“y=x++;”语句后,x的值为5。
对
错
假定x=5,则表达式2*x++的值为12。
对
错
假定x为一个简单变量,则&x表示x的地址。
对
错
假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][1]的值为( )。
a. 2
b. 4
c. 6
d. 8
假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为( )。
a. 0
b. 4
c. 8
d. 6
假定一个函数定义为“static int f1(int x,int y){return x+y;}”,该函数名称为( )。
a. static
b. int
c. f1
d. return
假定一个函数的二维数组参数说明为char w[][N],与之等价的指针参数说明为( )。
a. char (*w)[N]
b. char *w[N]
c. char (*w)N
d. char**a
假定一个函数的原型语句为“int ff(int* x);”,一个整型数组为a[10],则下面函数调用表达式不正确的是( )。
a. ff(a)
b. ff(a[0])
c. ff(a+3)
d. ff(&a[0])
假定一个函数的数组参数说明为char a[],与之等价的指针参数说明为( )。1B
a. char a
b. char* a
c. char& a
d. char**a
假定一个数据对象为int*类型,则指向该对象的指针类型仍为int*类型。
对
错
假定一个枚举类型的定义为“enum RB{ab,ac=3,ad,ae}x=ad;”,则x的值为2。
对
错
假定一个结构类型的定义为 “struct A{int a,b; A* c;};”,则该类型的长度为12。
对
错
假定一个结构类型的定义为 “struct A{int a,b; double c;};”,则该类型的长度为( )。
a. 8
b. 10
c. 12
d. 16
假定一个结构类型的定义为 “struct B{int a[5]; char* b;};”,则该类型的长度为20。
对
错
假定一个结构类型的定义为 “struct D{int a; D* next;};”,则该类型的长度为( )。
a. 4
b. 8
c. 12
d. 16
假定一个链表中结点的结构类型为“struct AA{int data, struct AA *next;};”,则next数据成员的类型为( )。
a. struct AA
b. struct AA*
c. AA
d. int
假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为( )。
a. p->next=f
b. p->next=f和f=p
c. f=p->next
转载请注明:奥鹏作业之家 » 国开24春《C语言程序设计》形考【参考答案】