20春《C语言(专科)》在线作业1
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 100 分)
1.以下叙述中正确的是()。
A.循环语句嵌套必须是同类型的语句
B.循环语句嵌套可以是同类型的语句,也可以不同类型
C.循环体中不能再有循环语句
D.do_while循环语句和while循环语句的程序执行方式都是相同的
2.intx=3;if(1<=2)if(0)x=4;elsex=5;elsex=6;执行上述语句后x的值是().
A.6
B.5
C.4
D.3
3.若fp已正确定义为一个文件指针,d1.dat为二进制文件,为“读”而打开此文件的语句是()。
A.fp=fopen(“d1.dat”,”w”);
B.fp=fopen(“d1.dat”,”rb”);
C.fp=fopen(“d1.dat”,”r+”);
D..fp=fopen(“d1.dat”,”r”);
4.以下描述正确的是()
A.在循环语句中break语句不独立出现
B.只能用continue语句中来终止本次循环
C.switch语句中不能出现continue语句
D.goto语句只能用于退缩出多层循环
5.以下对二维数组a的正确说明是()
A.inta[3][]
B.inta[3][4]
C.floata(3,4)
D.floata(3,)(4)
6.若有程序段:doublex=-5.9;inty;y=(int)x;执行该段程序后
A.x=-6,y=-6
B.x=-5,y=-5
C.x=-5.9,y=-6
D.x=-5.9,y=-5
7.以下叙述正确的是()
A.在循环内使用break语句和continue语句的作用相同
B.可以用continue语句来终止switch语句的执行
C.goto语句只能用于退出多层循环
D.break语句只能用在循环体内和switch语句体中
8.有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a,b,c的值分别为1,3,2,从键盘上输入数据的正确形式应当是()
A.a=1b=3c=a<回车>
B.a=1,b=3,c=2〈回车〉
C.1,3,2〈回车〉
D.132〈回车〉
9.已知intb;则对指针变量正确的说明和初始化是
A.intp=b;
B.intp=&b;
C.int*p=b;
D.int*p=&b
10.凡是函数中未指定存储类别的局部变量,隐含的存储类别为()。
A.static
B.register
C.extern
D.auto
11.假设intx[]={1,3,5,7,9,11},*ptr;ptr=x;以下那些是对数组元素的正确引用()
A.x[6]
B.*(ptr–)
C.*(ptr++)
D.*(–ptr)
12.执行以下语句后的结果为()enumweekday{sun,mon=3,tue,wed,thu}; enumweekdayworkday; workday=wed; printf(“%d\n”,workday);
A.编译出错
B.5
C.4
D.3
13.typedef()
A.和#define作用相同
B.可以定义各种类型名和变量名
C.可以创造新的数据类型
D.只是对已存在的类型增加一个类型名,不能创造新类型
14.若有定义:inta[5][6];则下面关于数组a的叙述中正确的是()。
A.该数组共有20个元素
B.a[5][6]是该数组的一个元素
C.a[0][6]是该数组的一个元素
D.a[0][0]是该数组的一个元素
15.已知intb;则对指针变量p正确的说明和初始化是:()
A.intp=b;
B.intp=&b;
C.int*p=b;
D.int*p=&b;
16.对局部变量不正确描述()
A.用auto说明的变量为局部变量
B.局部变量的初值每调用一次赋一次
C.局部变量在任何一个函数内有效
D.在不同块内可以使用相同的变量名而不会混淆
17.在C语言中,函数返回值的类型最终取决于()。
A.调用函数时主调函数所传递的实参类型
B.函数定义时形参的类型
C.函数定义时在函数首部所说明的函数类型
D.return语句中表达式值的类型
18.C语言中,要求运算数必须都是整数的运算符是()。
A.-
B.+
C.*
D.%
19.以下与函数fseek(fp,0L,SEEK_SET)有相同作用的是()。
A.rewind(fp)
B.ftell(fp)
C.fgetc(fp)
D.feof(fp)
20.C语言程序中,main函数的位置()。
A.在结尾
B.在开头
C.在中间
D.可以任意