西交网院2019年春季《程序设计基础》在线作业
2019年春季《程序设计基础》在线作业一、单选题:
1.以下选项中,与k=n++完全等价的表达式是( ) (满分:2)
A. k=n
n=n+1
B. n=n+1
k=n
C. k=++n
D. k+=n+1
2.设 int x=1, y=1; 表达式(!x( )y--)的值是( ) (满分:2)
A. 0
B. 1
C. 2
D. -1
3.C语言中,定义结构体的保留字是( ) (满分:2)
A. union
B. struct
C. enum
D. typedef
4.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是( ) (满分:2)
A. 地址传递
B. 单向值传递
C. 由实参传给形参,再由形参传回实参
D. 传递方式由用户指定
5.用户定义的函数不可以调用的函数是( ) (满分:2)
A. 非整型返回值的
B. 本文件外的
C. main函数
D. 本函数下面定义的
6.若有int a={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为( ) (满分:2)
A. printf("%d"
*(a+5));
B. printf("%d"
p);
C. printf("%d"
*(p+5));
D. printf("%d"
*p);
7.下列选项中正确的语句组是( ) (满分:2)
A. char s; s={"Beijing"};
B. char *s; s={"Beijing"};
C. char s; s="Beijing";
D. char *s; s="Beijing";
8.以下运算符中,优先级最高的运算符是( ) (满分:2)
A. *=
B. >=
C.(类型)
D. +
9.以下数值中,不正确的八进制数或十六进制数是( ) (满分:2)
A. 0x16
B. 16
C. -16
D. 0xaaaa
10.若二维数组a有m列,则在a前的元素个数为( ) (满分:2)
A. j*m+i
B. i*m+j
C. i*m+j-1
D. i*m+j+1
11.用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是( )。 long a=0xffffff; int b; char c; (满分:2)
A. 0ffffff 和0x61
B. -1和98
C. -1和97
D. 指向同一地址
12.C语言中,要求运算数必须是整型的运算符是( ) (满分:2)
A. ^
B. %
C. !
D. >
13.以下叙述中正确的是( ) (满分:2)
A. C语言的源程序不必通过编译就可以直接运行
B. C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C. C源程序经编译形成的二进制代码可以直接运行
D. C语言中的函数不可以单独进行编译
14.下列程序的输出结果是( )。main( ){ int x=1,y=0,a=0,b=0; switch(x) { case 1:switch(y) { case 0:a++;break; case 1:b++;break; } case 2:a++;b++;break; (满分:2)
A. a=1
b=0
B. a=2
b=1
C. a=1
b=1
D. a=2
b=2
15.以下叙述正确的是( ) (满分:2)
A. 在C程序中,main函数必须位于程序的最前面
B. C程序的每行中只能写一条语句
C. C语言本身没有输入输出语句
D. 在对一个C程序进行编译的过程中,可发现注释中的拼写错误
16.逻辑运算符两侧运算对象的数据类型( ) (满分:2)
A. 只能是0或1
B. 只能是0或非0正数
C. 只能是整型或字符型数据
D. 可以是任何类型的数据
17.int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为( ) (满分:2)
A. 1
B. 2
C. 3
D. 不一定
18.结构体类型的定义允许嵌套是指( ) (满分:2)
A. 成员是已经或正在定义的结构体型
B. 成员可以重名
C. 结构体型可以派生
D. 定义多个结构体型
19.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为( ) (满分:2)
A. int
B. float
C. double
D. 不确定
20.以下不能正确定义二维数组的选项是( ) (满分:2)
A. int a={{1}
{2}};
B. int a[]={1
2
3
4};
C. int a={{1}
2
3};
D. int a[]={{1
2}
{3
4}};
二、多选题:
1.以下叙述正确的是( ) (满分:2)
A. C语言严格区分大小写英文字母
B. C语言用";"作为语句分隔符
C. C程序书写格式自由
一行内可以写几个语句
一个语句也可以写在几行上
D. 可以使用/*…*/对C程序中的任何部分作注释
2.在定义int a;之后,对a的引用正确的有( ) (满分:2)
A. a
B. a[1
3]
C. a[!1]
D. a
3.以下4个选项中,可以看作是一条语句的有( ) (满分:2)
A. {;}
B. a=0
b=0
c=0;
C. if(a>0);
D. if(b==0) m=1;n=2;
4.定义语句:int x,y;若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的有( ) (满分:2)
A. 11 12<回车>
B. 11
<空格>12<回车>
C. 11
12<回车>
D. 11
<回车> 12<回车>
5.下列选项中是C语言合法标志符的有( ) (满分:2)
A. goodmorning
B. main
C. stdio.h
D. 8abc
6.以下叙述正确的是( ) (满分:2)
A. 预处理命令行都必须以"#"开始
B. 在程序中凡是以"#"开始的语句行都是预处理命令行
C. C程序在执行过程中对预处理命令行进行处理
D. #define ABCD是正确的宏定义
7.若以下选项中的变量已正确定义,则不正确的赋值语句是( ) (满分:2)
A. x1=26.8%3
B. x=3*x+x
C. x3=0x12
D. x4=1+2=3;
8.以下选项中不合法的字符常量是( ) (满分:2)
A. "B"
B. '\010'
C. 68
D. D
9.若a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是( ) (满分:2)
A. a=b=c=d=100;
B. d++;
C. c+b;
D. d=(c=22)-(b++);
10.以下用户标识符,其中合法的是( ) (满分:2)
A. return
B. f2G3
C. A3-3
D. abc
11.以下描述正确的是( ) (满分:2)
A. 调用函数时
实参可以是表达式
B. 调用函数时
实参与形参可以共用内存单元
C. 调用函数时
将为形参分配内存单元
D. 调用函数时
实参与形参的类型必须一致
12.以下选项中,合法的字符常量是( ) (满分:2)
A. \t'
B. '\17'
C. "n"
D. '\xaa'
13.以下选项中合法的表达式是( ) (满分:2)
A. 0<=x<100
B. i=j==0
C.(char)(65+3)
D. x+1=x+1
14.以下选项中不合法的字符常量是( ) (满分:2)
A. "B"
B. '\010'
C. 68
D. D
15.对do-while语句描述正确的是( ) (满分:2)
A. do-while语句构成的循环可以使用break语句退出循环
B. do-while语句构成的循环必须使用break语句退出循环
C. do-while语句构成的循环,当while中的表达式值为非零时结束循环
D. do-while语句构成的循环,当while中的表达式值为零时结束循环
16.设有以下定义int a=0;double b=1.25;char c='A';#define d 2则下面语句中正确的是( ) (满分:2)
A. a++;
B. b++;
C. c++;
D. d++;
17.以下用户标识符,其中合法的是( ) (满分:2)
A. return
B. f2G3
C. A3-3
D. abc
18.以下4个选项中,可以看作是一条语句的有( ) (满分:2)
A. {;}
B. a=0
b=0
c=0;
C. if(a>0);
D. if(b==0) m=1;n=2;
19.正确的if语句形式是( ) (满分:2)
A. if(x>y && x!=y);
B. if(x==y) x+=y;
C. if(x!=y) scanf("%d"
&x) else scanf("%d"
&y);
D. if(x<y) {x++;y++;}
20.以下叙述正确的是( ) (满分:2)
A. C语言严格区分大小写英文字母
B. C语言用";"作为语句分隔符
C. C程序书写格式自由
一行内可以写几个语句
一个语句也可以写在几行上.
D. 可以使用/*…*/对C程序中的任何部分作注释
三、判断题:
1.C程序中和每一行就是一个语句。( ) (满分:2)
A. 错误
B. 正确
2.一个C源程序可以由一个main( )函数和若干个其它函数组成。( ) (满分:2)
A. 错误
B. 正确
3.自增运算符和自减运算符的结合方向也是“自左向右”。( ) (满分:2)
A. 错误
B. 正确
4.数组类型不是C的基本数据类型,而是一种构造类型 。( ) (满分:2)
A. 错误
B. 正确
5.一个包含命令include可以包含几个头檔。( ) (满分:2)
A. 错误
B. 正确
6.C语言中,feof函数用来判断即将读入的是否是文件结束标志,它可用于二进制文件,但不能用于文本文件。( ) (满分:2)
A. 错误
B. 正确
7.在某种意义上,char和int通用。( ) (满分:2)
A. 错误
B. 正确
8.break语句可用于switch语句,也可用于for、while和do循环语句中。( ) (满分:2)
A. 错误
B. 正确
9.C语言的文件存取方式只能是顺序存取,不能随机存取。( ) (满分:2)
A. 错误
B. 正确
10.若定义char *str;则str="BOOK";是正确的。( ) (满分:2)
A. 错误
B. 正确
页:
[1]