|
16秋《C语言(专科)》在线作业1
一、单选题:
1.要定义一个结构体类型拟包含两个成员,其中成员变量info用来存放整型数据,成员变量link是指向自身结构体的指针。则下面的定义正确的是( )。 (满分:5)
A. structnode{intinfo;structnodelink;};
B. structnode{intinfo;node*link;};
C. structnode{intinfo;struct*link;};
D. structnode{intinfo;structnode*link;};
2.以下叙述正确的是( ) (满分:5)
A. goto语句只能用于退出多层循环
B. 可以用continue语句来终止switch语句的执行
C. break语句只能用在循环体内和switch语句体中
D. 在循环内使用break语句和continue语句的作用相同
3.假定inti=3,j=4;执行语句:printf("%d,%d,%d\n",i+++j,i,j);之后,其输出结果为:( ) (满分:5)
A. 7
4
4
B. 8
4
4
C. 7
3
4
D. 7
3
5
4.对函数的正确描述( ) (满分:5)
A. 在C语言中可以嵌套定义函数
B. 自定义函数和调用函数可以不在一个源文件中
C. 函数定义都是平行的,独立的
D. 不能嵌套调用函数
5.假定inti=3,j=4;执行语句:printf("%d,%d,%d\n",i+++j,i,j);之后,其输出结果为:( ) (满分:5)
A. 7
4
4
B. 8
4
4
C. 7
3
4
D. 7
3
5
6.若用数组名作为函数调用的实参,传给形参的是( ) (满分:5)
A. 数组的首地址
B. 数组的第一个元素值
C. 数组的全部元素值
D. 数组中元素的个数
7.有以下程序段:intk=0;while(k=1)k++;while循环执行的次数是( )。 (满分:5)
A. 无限次
B. 有语法错,不能执行
C. 一次也不执行
D. 执行1次
8.当数组作函数参数时,选出不正确的描述。( ) (满分:5)
A. 实参数组与形参数组类型应一致
B. 数组元素做函数实参时,同变量做实参一样是参数传值
C. 形参数组可以不定义数组大小
D. 实参数组与形参数组大小必须一致,否则C编译会检查出错
9.以下叙述中正确的是( )。 (满分:5)
A. 循环语句嵌套必须是同类型的语句
B. 循环语句嵌套可以是同类型的语句,也可以不同类型
C. dowhile循环语句和while循环语句的程序执行方式都是相同的
D. 循环体中不能再有循环语句
10.当数组作函数参数时,选出不正确的描述。( ) (满分:5)
A. 实参数组与形参数组类型应一致
B. 数组元素做函数实参时,同变量做实参一样是参数传值
C. 形参数组可以不定义数组大小
D. 实参数组与形参数组大小必须一致,否则C编译会检查出错
11.以下叙述正确的是( ) (满分:5)
A. goto语句只能用于退出多层循环
B. 可以用continue语句来终止switch语句的执行
C. break语句只能用在循环体内和switch语句体中
D. 在循环内使用break语句和continue语句的作用相同
12.在说明语句:int*f( );中,标识符f代表的是( ) (满分:5)
A. 一个返回值为指针型的函数名
B. 一个用于指向整型数据的指针变量
C. 一个用于指向函数的指针变量
D. 一个用于指向一维数组的行指针
13.有以下程序段typedefstructnode{intdata;structnode*next;}*NODE;NODEp;以下叙述中正确的是( )。 (满分:5)
A. p是指向structnode结构体变量的指针的指针
B. NODEp;语句出错
C. p是指向structnode结构变量的指针
D. p是structnode结构变量
14.局部变量的作用域( ) (满分:5)
A. 在定义的块内有效
B. 在函数外也有效
C. 在本文件内有效
D. 在所有文件内有效
15.有以下程序段:intk=0;while(k=1)k++;while循环执行的次数是( )。 (满分:5)
A. 无限次
B. 有语法错,不能执行
C. 一次也不执行
D. 执行1次
16.以下与函数fseek(fp,0L,SEEKSET)有相同作用的是( )。 (满分:5)
A. feof(fp)
B. ftell(fp)
C. fgetc(fp)
D. rewind(fp)
17.若fp已正确定义为一个文件指针,d1.dat为二进制文件,为“读”而打开此文件的语句是( )。 (满分:5)
A. .fp=fopen("d1.dat"
"r");
B. fp=fopen("d1.dat"
"rb");
C. fp=fopen("d1.dat"
"r+");
D. fp=fopen("d1.dat"
"w");
18.以下选项中,当x为大于1的奇数时,值为0的表达式是( )。 (满分:5)
A. x%2==1
B. x/2
C. x%2!=0
D. x%2==0
19.对于for(表达式1;表达式2;表达式3)语句的正确描述( ) (满分:5)
A. 表达式2省略,循环不执行
B. 表达式3省略,可在循环体中修改循环控制变量,以保证正常退出
C. 三个表达式均不能省略
D. 三个表达式均不能省略。但分号可以省略
20.如果输入信息为:1234567则执行语句:scanf("%2d%2d",&x,&y);之后,x,y的值为( ) (满分:5)
A. x为12
y为34
B. x为2
y为3
C. x为12
y为67
D. x为1234567
y为0
|
|