华师17春《C语言程序设计B》在线作业答案
华师17春《C语言程序设计B》在线作业一、单选题:【20道,总分:40分】
1.以下能对一维数组a进行正确初始化的语句是 (满分:2)
A. int a=(0,0,0,0,0);
B. int a={};
C. int a[]={0};
D. int a={10*1};
2.下面四个选项中,均是合法转义字符的选项是 (满分:2)
A. ‘\’’ ‘\\’‘\n’
B. ‘\’ ‘\017’ ‘\”’
C. \018’ ‘\f’‘xab’
D. \\0’ ‘\101’ ‘x1f’
3.对以下说明语句的正确理解是( )。 int a={6,7,8,9,10}; (满分:2)
A. 将5个初值依次赋给a至a
B. 将5个初值依次赋给a至a
C. 将5个初值依次赋给a至a
D. 因为数组长度与初值的个数不相同,所以此语句不正确
4.有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是 (满分:2)
A. A) 132<回车>
B. 1,3,2<回车>
C. a=1 b=3 c=2<回车>
D. a=1,b=3,c=2<回车>
5.在一个C程序中,main函数的位置( )。 (满分:2)
A. 必须在程序的开头
B. 可以在程序的任何地方
C. 必须在其它函数中间
D. 必须在程序的后面
6.以下能对二维数组a进行正确初始化的语句是 (满分:2)
A. int a[]={{1,0,1},{5,2,3}};
B. int a[]={{1,2,3},{4,5,6}};
C. int a={{1,2,3},{4,5},{6}};
D. int a[]={{1,0,1},{},{1,1}};
7.下列四个选项中,均是C语言关键字的选项是 (满分:2)
A. auto enum include
B. switch typedef continue
C. signed union scanf
D. if struct type
8.以下说法正确的是 (满分:2)
A. 输入项可以为一实型常量,如scanf(“%f”,3.5);
B. 只有格式控制,没有输入项,也能进行正确输入,如scanf(“a=%d,b=%d”);
C. 当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(“%4.2f”,&f);
D. 当输入数据时,必须指明变量的地址,如scanf(“%f”,&f);
9.下面四个选项中,均是不合法的转义字符的选项是 (满分:2)
A. ‘\”’‘\\’‘\xf
B. ‘\1011’ ‘\’‘\a’
C. ‘\011’‘\f’‘\}’
D. ‘\abc’‘\101’‘xlf’
10.将两个字符串连接起来组成一个字符串时,选用( )函数。 (满分:2)
A. strlen( )
B. strcpy( )
C. strcat( )
D. strcmp( )
11.在位运算中,操作数每右移一位,其结果相当于( )。 (满分:2)
A. 操作数乘以2
B. 操作数除以2
C. 操作数乘以4
D. 操作数除以4
12.已知x=43,ch=‘A’,y=0;则表达式(x>=y&&ch<‘B’&&!y)的值是 (满分:2)
A. 0
B. 语法错
C. 1
D. “假”
13.下面不正确的字符串常量是 (满分:2)
A. ‘abc’
B. “12’12”
C. “0”
D. “ ”
14.以下不是无限循环的语句为 (满分:2)
A. for(y=0,x=1;x>++y;x=i++) i=x
B. for(;;x++=i)
C. while(1) { x++; }
D. for(i=10;;i--) sum+=i;
15.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为 (满分:2)
A. char<int<long int<=float<double
B. char=int<long int<=float<double
C. char<int<long int=float=double
D. char=int=long int<=float<double
16.若有说明:int a;则对a数组元素的正确引用是 (满分:2)
A. a
B. a
C. a(5)
D. a
17.下面正确的字符常量是 (满分:2)
A. “c”
B. ‘\\’’
C. ‘W’
D. ‘’
18.以下不正确的C语言标识符是( )。 (满分:2)
A. AB1
B. ab3
C. 4ab
D. a2b
19.为求出s=10!的值,则变量s的类型应当为( )。 (满分:2)
A. int
B. unsigned
C. long
D. 以上三种类型均可
20.若有说明:int a={0};则下面正确的叙述是 (满分:2)
A. 只有元素a可得到初值0
B. 此说明语句不正确
C. 数组a中各元素都可得到初值,但其值不一定为0
D. 数组a中每个元素均可得到初值0
二、多选题:【15道,总分:30分】
1.若有?char?ch;,下面可以对变量c正确赋值的语句是: (满分:2)
A. ch?=‘A’;
B. getchar(ch);
C. ch?=?getchar( );
D. scanf(“%c”,&ch);
2.下列函数中,能够输出字符数据的函数有 (满分:2)
A. puts(?)
B. printf(?)
C. scanf(?)
D. putchar(?)
3.以下正确的说法有 (满分:2)
A. C语言程序的基本组成单位是函数;
B. 函数必须要有返回值;
C. 一个函数的类型为void,在定义时,可以省略void;
D. 函数声明是一条C语句
4.在C语言中,包括以下哪几类标识符? (满分:2)
A. 关键字
B. 系统预定义的标识符
C. 用户标识符
5.关于条件运算符的叙述正确的是 (满分:2)
A. 条件运算符的优先级别比关系运算符和算术运算符都低;
B. 条件运算符是C语言中惟一的一个三目运算符;
C. 条件运算符的结合方向是“自右至左” ;
D. 条件运算符可以替代任何if语句的功能
6.以下关于函数定义描述正确的是? (满分:2)
A. 指定函数的名字,以便以后按名调用
B. 指定函数的类型,即函数值的类型
C. 指定函数的参数的名字和类型,以便在调用函数时向它们传递数据。
D. 指定函数应当执行什么操作,也就是函数是做什么的。
7.以下关于函数的叙述正确的有 (满分:2)
A. 一个C语言程序有且仅有一个main函数;
B. C语言程序中,main函数是没有参数的;
C. 一个函数通过其他函数间接的调用了自身,这种情况也是一种递归调用;
D. main函数是由系统调用的
8.关于switch语句叙述正确的是 (满分:2)
A. 语句中,case的冒号后面允许没有语句。
B. switch语句中,每一个case的冒号后面都允许跟有多条语句。
C. 在与switch语句配套的case语句中所使用的表达式可以是变量或常量。
D. switch语句中,可以没有default语句。
9.以下关于二维数组初始化的描述正确的是? (满分:2)
A. 分行给二维数组赋初值
B. 可以将所有数据写在一个花括号内,按数组排列的顺序对各元素赋初值
C. 可以对部分元素赋初值
D. 如果对全部元素都赋值,则定义数组时对第一维的长度可以不指定,但第二维的长度不能省。
10.定义了一维int型数组a后,下面正确的引用有: (满分:2)
A. a=1;
B. a=2;
C. a=5*2;
D. a=a*a;
11.假设float?x,y,z;,并通过scanf("%f%f%f?",&a,&b,&c);对a赋于10.0,b赋予22.0,c赋予33.0的值,下面正确的输入形式是(注:符号【代表空格): (满分:2)
A. 10<回车>22<回车>?33<回车>
B. 10.0<回车>22.0<回车>33.0<回车>
C. 10.0,22.0,33.0<回车>
D. 10.0【22.0【33.0<回车>
12.下面叙述中,正确的有 (满分:2)
A. 函数的定义不能嵌套,但函数调用可以嵌套;
B. 为了提高可读性,编写程序时应该适当使用注释;
C. 变量定义时若省去了存储类型,系统将默认其为静态型变量;
D. 函数中定义的局部变量的作用域在函数内部
13.下列语句中,正确的有: (满分:2)
A. char?str="hello";
B. char?str[]={'h','e','l','l','o','\0'};
C. char?str={"hi"};
D. char?str="";
14.下面属于转义符的有: (满分:2)
A. ‘\t?’
B. ‘\n’
C. ‘%d’
D. ‘\376’
15.以下哪些函数可以实现字符的输入? (满分:2)
A. putchar函数
B. getchar函数
C. printf函数
D. scanf函数
三、判断题:【15道,总分:30分】
1.设i,j,k均为int型变量,则执行完for(i=0,j=10;i<=j;i++,j--) k=i+j;语句后,k的值为11。 (满分:2)
A. 错误
B. 正确
2.如果被定义函数的返回值类型是整型或字符型,使用前可以不必进行说明。 (满分:2)
A. 错误
B. 正确
3.在一个函数定义中,只能有一个return语句。 (满分:2)
A. 错误
B. 正确
4.代数式(x-y)2×(a+b)对应的C语言表达式为(x-y)*(x-y)*(a+b)。 (满分:2)
A. 错误
B. 正确
5.若有定义:int a,*p;,则操作p=a;是合法的操作。 (满分:2)
A. 错误
B. 正确
6.实际上,可以用顺序、分支、循环三种结构构造任何算法。 (满分:2)
A. 错误
B. 正确
7.C语言在判断一个量是否为真时,以非0值代表“真”,以0值代表“假”。 (满分:2)
A. 错误
B. 正确
8.C程序有且仅有一个main( )函数。 (满分:2)
A. 错误
B. 正确
9.在C程序中,函数调用可以作为函数的形参。 (满分:2)
A. 错误
B. 正确
10.当主程序执行完毕时,亦即程序执行完毕。 (满分:2)
A. 错误
B. 正确
11.两个char 型数据相加,其结果为char型。 (满分:2)
A. 错误
B. 正确
12.变量分为全局和局部两种,自动局部变量没有赋初值时,其值是不确定的。 (满分:2)
A. 错误
B. 正确
13.在C语言中,任何一个表达式的最后加上一个分号就构成一个合法的语句。 (满分:2)
A. 错误
B. 正确
14.若a=1,b=2,c=3,则执行表达式(a>b)&&(c++)后,c的值为4。 (满分:2)
A. 错误
B. 正确
15.C语言中,任意两个函数间不能嵌套定义,但可以互相调用。 (满分:2)
A. 错误
B. 正确
在做作业,求解题参考资料。
页:
[1]