C程序设计18春在线作业1-0002 试卷总分:100 得分:0 一、 单选题 (共 20 道试题,共 60 分) 1.t为int类型,进人下面的循环之前,t的值为0 while( t=l ) { } 则以下叙述中正确的是 () A.循环控制表
C程序设计18春在线作业1-0002
试卷总分:100 得分:0
一、 单选题 (共 20 道试题,共 60 分)
1.t为int类型,进人下面的循环之前,t的值为0 while( t=l ) { …… } 则以下叙述中正确的是 ()
A.循环控制表达式的值为0
B.循环控制表达式的值为1
C.循环控制表达式不合法
D.以上说法都不对
2.设有定义int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是()
A.*p=8;
B.*q=5;
C.q=p;
D.p=1;
3.下列程序:main( ) { int a=7,b=5; printf("%d\n",b=b/a); } 的输出结果是()
A.5
B.1
C.0
D.不确定值
4.若有以下说明和语句,int c[4][5],(*p)[5];p=c;能正确引用c数组元素的是()
A.p+1
B.*(p+3)
C.*(p+1)+3
D.*(p[0]+2))
5.有如下定义, struct { int n; char a[10]; float m; }x; 变量x占的字节数是()
A.10
B.8
C.14
D.16
6.以下叙述正确的是()
A.任何存贮类型变量在未赋初值时,其值都是不确定的
B.将局部变量说明为static存贮类型,其生存期将得到延长
C.将全局变量说明为static时,其作用域将被扩大
D.形参可以使用的存贮类型说明符与局部变量相同
7.下面的选项中正确的赋值语句是(char a[5],*p=a;)()
A.p=“abcd”;
B.a=“abcd”;
C.*p=“abcd”;
D.*a=“abcd”;
8.假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是()
A.3
B.6
C.10
D.20
9.若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0) s=a; for(b=1;b<=c;b++) s=s+1; 则与上述程序段功能等价的赋值语句是()
A.s=a+b;
B.s=a+c;
C.s=s+c;
D.s=b+c;
10.已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是()
A.6
B.0
C.2
D.1
11.若有说明: int i,j=7, *p=&i;, 则与i=j; 等价的语句是()
A.i= *p;
B.*p=j;
C.i=&j;
D.i=* *p;
12.在下列程序段中, enum color { red,yellow,blue=4,green,white} c1,c2; c1=yellow; c2=white; 枚举变量 c2 的值是()
A.1
B.3
C.5
D.6
13.以下对二维数组a进行正确初始化的是()
A.int a[2][3]={{1,2},{3,4},{5,6}};
B.int a[ ][3]={1,2,3,4,5,6};
C.int a[2][ ]={1,2,3,4,5,6};
D.int a[2][ ]={{1,2},{3,4}};
14.以下程序 main( ) { int i=010,j=10,*pi,*pj; pi=&i; pj=&j; printf("%d,%d\n",*pi,*pj); } 的输出结果为()
A.10,10
B.8,10
C.010,10
D.8,8
15.fseek(fd,-10L,1)中的fd和1分别为()
A.文件指针,文件的开头
B.文件指针,文件的当前位置
C.文件号,文件的当前位置
D.文件号,文件的开头
16.一个main(int a,char *argv[])函数带参数,可执行文件名为prog.exe,若命令行输入: prog abcd efg 123 则printf(“%d,%s\n”,a,argv[1]); 的结果是()
A.3,prog
B.4,prog
C.3,abcd
D.4,abcd
17.C语言中以追加方式打开一个文件应选择的参数。()
A.“r”
B.“w”
C.“rb”
D.“a”
18.为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与哪个if组成配对关系?()
A.缩排位置相同的if
B.在其之前未配对的if
C.在其之前未配对的最近的if
D.同一行上的if
19.为求出s=10!的值,则变量s的类型应当为()
A.int
B.unsigned
C.long
D.以上三种类型均可
20.表达式:10!=9的值是()
A.true
B.非零值
C.0
D.1
二、 判断题 (共 20 道试题,共 40 分)
1.逻辑型是C语言的数据类型。
A.错误
B.正确
2.019是一个合法的整型常量。
A.错误
B.正确
3.在C语言中,八进制数是用英文字母o后加一个整数来表示,例如o123。
A.错误
B.正确
4.’\101’是合法的字符型常量。
A.错误
B.正确
5.设ch是char型变量,其值为z,且有如上表达式: ch=(ch>’A’&&ch<=’Z’)?(ch+32):ch,该表达式的值是A。
A.错误
B.正确
6.在C语言中,存储一个整型、字符型、双精度实型变量所需的字节数是2,4,8。
A.错误
B.正确
7.getchar()函数没有参数。
A.错误
B.正确
8.C语言是一种低级语言。
A.错误
B.正确
9.用scanf可以从键盘上读入一个含有空格的字符串。
A.错误
B.正确
10.在一个由优先级相同的运算符组成的表达式中,计算顺序将是自左至右进行。
A.错误
B.正确
11.strcpy函数的作用是连接两个字符串。
A.错误
B.正确
12.若有定义:int a;则scanf(“%d",a);可以给变量a赋值。
A.错误
B.正确
13.表达式 0195 是一个八进制整数。
A.错误
B.正确
14.int (*ptr) (),则ptr是一维数组的名字。
A.错误
B.正确
15.C语言中最简单的数据类型包括整型,实型和字符型。
A.错误
B.正确
16.函数的实参个数可以多于形参的个数。
A.错误
B.正确
17.在 C 程序中 , 函数既可以嵌套定义 , 也可以嵌套调用。
A.错误
B.正确
18.switch选择结构中必须有default子句。
A.错误
B.正确
19.函数的实参可以是常量、变量或表达式,但形参只能是变量。
A.错误
B.正确
20.构成数组的各个元素可以有不同的数据类型。
A.错误
B.正确