C语言程序设计(山东联盟-青岛科技大学)-知到答案、智慧树答案

第一章 单元测试

1、问题:

01110011:流程图中用下列哪一个图形符号表示判断?()

选项:
A:圆形框
B:平行四边形框
C:矩形框
D:菱形框
答案: 【解锁后可见】

2、问题:01110021:流程图中用下列哪种图形符号表示事情处理过程的开始?(
选项:
A:圆括号矩形
B:箭头
C:矩形
D:圆圈
答案: 【解锁后可见】

3、问题:01110031:流程图中用于描述输出的是下列哪一个图形符号?
选项:
A:平行四边形框
B:菱形框
C:矩形框
D:圆括号矩形框
答案: 【解锁后可见】

4、问题:

01210011:以下选项中哪一个是C语言关键字( )。

选项:
A: printf
B:fun
C:include
D:default
答案: 【解锁后可见】

5、问题:01210031:下列选项中不属于C语言关键字的是()。
选项:
A:register
B: external
C:enum
D:default
答案: 【解锁后可见】

6、问题:01210051:C语言提供的合法关键字是(  )。
选项:
A:default
B:Case
C:swith
D:cher
答案: 【解锁后可见】

7、问题:

01210021下列哪一个选项不属于C语言的关键字()。

选项:
A: break
B:integer
C:static
D:while
答案: 【解锁后可见】

8、问题:

01210041下列四组选项中均不是C语言关健字的选项是(  )。

选项:
A:define   IF   type
B:gect   char   printf
C:include   scanf   case
D:while   go   pow
答案: 【解锁后可见】

9、问题:

01210061C语言提供的合法数据类型关键字是( )。

选项:
A:Integer
B:Signed
C:Char
D: float
答案: 【解锁后可见】

10、问题:01310011:在以下各组标识符中,均可以用作变量名的一组是()。
选项:
A:table_1, a*1
B:for, point
C:a01, Int
D:0_a, W12
答案: 【解锁后可见】

11、问题:

01310021:下列不合法的C语言中标识符是()。

选项:
A:student
B: PI
C: _total
D: #xyz
答案: 【解锁后可见】

12、问题:

01310031:以下不合法的C语言标识符是()。

选项:
A: abc
B:ABC
C: a_bc
D:ab.c
答案: 【解锁后可见】

13、问题:01310041:下列字符串是合法标识符的是(  )。
选项:
A:LINE 1
B:long
C:9_student
D:_HJ
答案: 【解锁后可见】

14、问题:

01310051:下列标识符组中,合法的用户标识符为( )。

选项:
A:list与*jer 
B:_0123与ssiped
C:keep%与wind
D:del-word与signed
答案: 【解锁后可见】

15、问题:

01310061:以下选项中不合法的用户标识符是(  )。

选项:
A:PRINT 
B:abc.c 
C:file
D:Main
答案: 【解锁后可见】

16、问题:

01310071:以下选项中不合法的用户标识符是(  )。

选项:
A:Dim
B:_123
C:Printf
D: A$ 
答案: 【解锁后可见】

17、问题:01310081:在下列C语言程序中,可以用做变量名的是(  )。
选项:
A:*p
B:int
C:a1
D:1
答案: 【解锁后可见】

18、问题:

01310091:以下符号中不能用作用户标识符的符号是(  )。

选项:
A:_256
B:Scanf
C:void
D:Struct
答案: 【解锁后可见】

19、问题:

01310101:下面四个选项中,均是不合法的用户标识符的选项是(  )。

选项:
A:float   lao     _A
B:b-a    goto   int
C:A      p_0    do
D:_123     temp   INT
答案: 【解锁后可见】

20、问题:

01310111:C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(  )。

选项:
A:必须为字母或下划线
B:必须为下划线
C:必须为大写
D:可以是字母、数字和下划线中的任一种字符
答案: 【解锁后可见】

21、问题:

01380011:C语言规定标识符只能由字母、数字和小数点三种字符组成。()

选项:
A:错
B:对
答案: 【解锁后可见】

22、问题:

01420021:65的二进制32位定长形式是00000000 00000000 00000000 01000001



选项:
A:对
B:错
答案: 【解锁后可见】

23、问题:01410021:下面4个选项中,均是正确的八进制数和十六进制数的选项是( )。
选项:
A:0abc    -017      0xc
B:0a12    -0x123   -0xa
C: -10     0X8f     -011
D:0010    -0x11     0xf1
答案: 【解锁后可见】

24、问题:

01410011:某种数制每位上所使用的数码个数称为该数制的()。

选项:
A:数值
B:基数
C:指数
D:位权
答案: 【解锁后可见】

25、问题:

01410031:下面四个选项中,均是不正确的八进制或十六进制数的选项是(  )。

选项:
A:0a12   7ff     -123
B:010   -0x11    0x16
C:016   0x8f     018
D:0abc   017     0xa
答案: 【解锁后可见】

第二章 单元测试

1、问题:

02180011C语言定义一个变量,占用内存中的一个存储空间。( )

选项:
A:错
B:对
答案: 【解锁后可见】

2、问题:

02180021:C语言中,要求对所有用到的变量先定义,然后才能使用。( )

选项:
A:错
B:对
答案: 【解锁后可见】

3、问题:

02210011下面四个选项中均是合法整型常量的选项是( )。

选项:
A:-0xcdf   01a      0xe
B:-0x48a  2e5  0x02B2
C:160     0xffff     011
D:-01     986,012   0668
答案: 【解锁后可见】

4、问题:

02210021下面四个选项中,均是不合法整型常量的选项是(  )。

选项:
A:-0f1   -0xffff   0011
B:-0xcdf   017   12,456
C:-018    999    5e2
D: -0x48eg -068  03f
答案: 【解锁后可见】

5、问题:02210031:下列选项中表示一个正确的整型常量 (  )。
选项:
A:1.2
B: 1,000
C: -20
D: 4 5 6
答案: 【解锁后可见】

6、问题:

02210041若a为整型变量,则语句a=-2;printf(“%d”,a);( )。

选项:
A:赋值不合法
B:输出为不确定值
C:输出值为2
D:输出值为-2
答案: 【解锁后可见】

7、问题:02280011:在变量声明中给变量赋初值的方法是:int a=b=c=10;()
选项:
A:错
B:对
答案: 【解锁后可见】

8、问题:

02280021如果i的原值为3,则:j=++i;j的值为3。()

选项:
A:错
B:对
答案: 【解锁后可见】

9、问题:

02280031设C语言中一个int型数据在内存中占2个字节,则int数据的取值范围为-32768~32767。()

选项:
A:对
B:错
答案: 【解锁后可见】

10、问题:

02310011下面四个选项中,均是不合法浮点数的是(  )。

选项:
A:-e3   .234    1e3
B: 160    0.12     e3
C:123   2e4.2     .e5
D:-018   123e4   0.0
答案: 【解锁后可见】

11、问题:02310031:以下每个选项都代表一个常量,其中不正确的实型常量是( )。
选项:
A: 0.8103e2
B:2.607E-1
C:4.6e-2
D: -77.77
答案: 【解锁后可见】

12、问题:

02310041设变量a是整型,f是实型,i是双精度型,则表达式10+’a’+i*f值的数据类型为(  )。

选项:
A:float
B:int
C:double
D:不确定
答案: 【解锁后可见】

13、问题:

02310051设有说明:char w;int x;float y;double z;则表达式w*x+z-y值的数据类型为(  )。

选项:
A:double
B:float
C: int
D: char
答案: 【解锁后可见】

14、问题:02310062:以下变量定义中,合法的是(  )。
选项:
A:float 3_four=3.4;
B:double a=1+4e2.0;
C:int _abc_=2;
D:short do =15;
答案: 【解锁后可见】

15、问题:

02310072已定义x为float型变量x=213.82631;printf(“%-4.2f\n”,x);则以上语句( )。

选项:
A:输出为213.83
B:输出为213.82
C:输出格式描述符的域宽不够,不能输出
D:输出为-213.82
答案: 【解锁后可见】

16、问题:02410031:C语言中,char型数据在内存中的存储形式是(  )。
选项:
A:原码
B:反码
C:补码
D:ASCII码
答案: 【解锁后可见】

17、问题:

02410041下面正确的字符常量是(  )。

选项:
A: ‘\\”
B: ‘W’
C: “c”
D: ‘
答案: 【解锁后可见】

18、问题:

02410081下面四个选项中,均是正确的数值常量或字符常量的选项是( )。

选项:
A:’3′      011       0xFF00   0a
B:+001   0xabcd     2e2      50
C:”a”     3.9E-2.5   1e1      ‘”‘
D:0.0     0f        8.9e      ‘&’
答案: 【解锁后可见】

19、问题:

02480011字符型变量用来存放字符常量,注意只能放2个字符。()

选项:
A:错
B:对
答案: 【解锁后可见】

20、问题:

02480021C语言中可以把一个字符串赋给一个字符变量。( )

选项:
A:错
B:对
答案: 【解锁后可见】

21、问题:

02480031C语言使字符型数据和整型数据在一定范围内之间可以通用。一个字符数据既可以以字符形式输出,也可以以整数形式输出。()

选项:
A:对
B:错
答案: 【解锁后可见】

22、问题:

02480041C的字符常量是用双引号括起来的一个字符。( )

选项:
A:错
B:对
答案: 【解锁后可见】

23、问题:

02510011下面不正确的字符串常量是(  )。

选项:
A:”12’12”
B: “0”
C:’abc’
D: ” “
答案: 【解锁后可见】

24、问题:

02510021下面4个选项中均是非法常量的是(  )。

选项:
A:-0x18    01177     0xf
B:’as’       -0fff       ‘\0xa’
C:0xabc       ‘\0’       “a”
D:’\\’        \01          12,456
答案: 【解锁后可见】

25、问题:

02580011字符串常量是一对单引号括起来的字符序列。( )

选项:
A:对
B:错
答案: 【解锁后可见】

26、问题:

02610011int k=8567;printf(“|%-6d|”,k);结果是(  )。

选项:
A:输出为|008567|
B:输出为|8567  |
C:输出为|-08567|
D:输出格式描述不合法
答案: 【解锁后可见】

27、问题:

02610021若在scanf函数语句中没有非格式字符作输入数据的间隔,则不可用(  )作为输入数据的间隔。

选项:
A:TAB
B:回车
C:空格
D:逗号
答案: 【解锁后可见】

28、问题:

02610031使用scanf函数时,在源程序开头(  )。

选项:
A:书写#include <math.h>
B:书写#include <stdio.h>
C:不必写#include
D:书写#include <scanf.h>
答案: 【解锁后可见】

29、问题:

02610041double x=213.82631; printf(“%-6.2e\n”,x);则以上语句(  )。

选项:
A:输出格式描述符的域宽不够,不能输出
B:输出为-2.14e2
C:输出为21.38e+01
D:输出为2.14e+02
答案: 【解锁后可见】

30、问题:

02610051若输入4位整数到整型变量a中,可用(  )。

选项:
A:scanf(“M”,&a);
B: scanf(“M”);
C:scanf(“%d”,&a);
D:scanf(“M”,a);
答案: 【解锁后可见】

31、问题:

02610061a为整型变量,输入5,执行printf(“a=%d”,a)后输出为(  )。

选项:
A:a=5
B:a=%5
C:5
D:a=a=5
答案: 【解锁后可见】

32、问题:

02610072下列能正确输入字符数组a的语句是(  )。

选项:
A:scanf(“%s”,a);
B:scanf(“%c”,a);
C: scanf(“%s”,&a);
D:循环执行scanf(“%c”,&a[i]);
答案: 【解锁后可见】

33、问题:

02610082在输入时,字符变量的值必须使用空格间隔,其输入函数可为(  )。

选项:
A:循环执行getchar()
B:scanf(“%c  %c  %c”,&a,&b,&c);
C:scanf(“%c,%c,%c”,&a,&b,&c);
D:scanf(“<“,&a,&b,&c);
答案: 【解锁后可见】

34、问题:

02680011若int x=3; printf(“%d”,&x);则系统会报错,没有任何结果。()

选项:
A:对
B:错
答案: 【解锁后可见】

35、问题:

02680021输入语句scanf(“%d,%d,%d”,a,b,c);的格式是正确的。( )

选项:
A:对
B:错
答案: 【解锁后可见】

36、问题:

02680031在scanf(“%d,%d,%d”,&a,&b)函数中,当输入为1,2,3时,将1赋给a,将2赋给b。( )

选项:
A:对
B:错
答案: 【解锁后可见】

37、问题:

02680041printf函数是一个标准库函数,它的函数原型在头文件”string.h”中。()

选项:
A:错
B:对
答案: 【解锁后可见】

38、问题:

02680051在printf函数中,输出列表的各输出项之间可用冒号分隔。()

选项:
A:对
B:错
答案: 【解锁后可见】

39、问题:

02680061若int x=3;printf(“%d”,&x);则系统不会报错,会输出x的地址。()

选项:
A:错
B:对
答案: 【解锁后可见】

40、问题:

02680071输入语句的格式为:scanf(“%d%d%d”,&a,&b,&c);是正确。()

选项:
A:对
B:错
答案: 【解锁后可见】

41、问题:02680081:在scanf(“%d,%d”,&a,&b)函数中,可以使用一个或多个空格作为两个输入数之间的间隔。()
选项:
A:对
B:错
答案: 【解锁后可见】

42、问题:

02680091printf函数是一个标准库函数,它的函数原型在头文件stdio.h中。()

选项:
A:错
B:对
答案: 【解锁后可见】

43、问题:

02680111在scanf(“%c%c”,&c1,&c2)函数中,当输入为字符a,b时,将a赋给c1,将b赋给c2。( )

选项:
A:错
B:对
答案: 【解锁后可见】

44、问题:

02680121printf函数中的格式字符,既可以是大写形式也可以是小写形式。()

选项:
A:错
B:对
答案: 【解锁后可见】

45、问题:

02680131使用printf函数时,格式控制字符串和各输出项应一一对应。()

选项:
A:错
B:对
答案: 【解锁后可见】

46、问题:

02680141在printf函数中,格式字符f的意义是:以小数形式输出单精度实数。()

选项:
A:错
B:对
答案: 【解锁后可见】

47、问题:

02680161输入语句的格式为:scanf(“%d,%d,%d”,&a;&b;&c)是正确的。()

选项:
A:对
B:错
答案: 【解锁后可见】

48、问题:

02680171在printf函数中,不同系统对输出表列的求值顺序不一定相同,VC是按从右到左进行的。()

选项:
A:错
B:对
答案: 【解锁后可见】

第三章 单元测试

1、问题:03110011:已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=’A’+’6′-‘3’后,c2中的值为( )。
选项:
A:C
B:不确定的值
C:D
D:68
答案: 【解锁后可见】

2、问题:

03110021:若有定义int k=7, x=12;,则能使值为3的表达式是( )。

选项:
A:(x%=k)-(k%=5)
B:x%=(k%=5)
C:x%=(k-k%5)
D:x%=k-k%5
答案: 【解锁后可见】

3、问题:

03110031:设int n=3;则有表达式++n,n的结果是( )。

选项:
A:5
B:4
C:3
D:2
答案: 【解锁后可见】

4、问题:

03110041:表达式18/4*sqrt(4.0)/8值的数据类型为(  )。

选项:
A: int
B:float
C:double
D:不确定
答案: 【解锁后可见】

5、问题:

03110051:设int n=3;则n++的指是( )。

选项:
A:2
B:4
C:5
D:3
答案: 【解锁后可见】

6、问题:

03110061:若有int k = 11;则表达式(k++*1/3)的值是( )。

选项:
A:11
B:0
C:3
D:12
答案: 【解锁后可见】

7、问题:

03110071:下列表达式的值,那一个等于0 (  )。

选项:
A:5%6
B:5/6
C:5-6
D:5/6.0
答案: 【解锁后可见】

8、问题:

03110082:已知int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是( )。

选项:
A: 0.000000
B: 2.500000
C:3.500000
D:2.750000
答案: 【解锁后可见】

9、问题:

03180011:在C语言中,要求参加运算的数必须是整数的运算符是%。( )

选项:
A:错
B:对
答案: 【解锁后可见】

10、问题:

03180021:若有int m=5,y=2;则执行下面表达式y+=y-=m*=y后,y的值为-16。(  )

选项:
A:对
B:错
答案: 【解锁后可见】

11、问题:

03210012判断char型变量c1是否为小写字母的正确表达式为( )。

选项:
A:(c1>=’a’)&&(c1<=’z’)
B: (c1>=A. &&(c1<=’z’)
C:(‘a’>=c1)||(‘z'<=c1)
D:’a'<=c1<=’z
答案: 【解锁后可见】

12、问题:03210021:下列运算符中,不属于关系运算符的是( )。
选项:
A:<
B:!=
C:!
D:>=
答案: 【解锁后可见】

13、问题:

03210032设int n=2;则++n+1==4的结果是(  )。

选项:
A:true
B:0
C:false
D:1

答案: 【解锁后可见】

14、问题:

03310011:在C语言的逻辑运算中,逻辑值”真”用( )表示。

选项:
A: true
B:T
C:TURE
D:整型值1
答案: 【解锁后可见】

15、问题:

03310021在C语言的混合运算中,非逻辑值转化为逻辑值的原则是()。

选项:
A:非“零”为真,“零”值为假
B:非0为真,0为假
C:1为真,0为假
D:正数为真,负数为假
答案: 【解锁后可见】

16、问题:

03310031在逻辑运算中,逻辑运算符两侧的运算对象数据类型是( )。

选项:
A:只能是0或非0正数
B:只能是整型或字符型数据
C:可以是任何合法的类型数据
D:只是0或1
答案: 【解锁后可见】

17、问题:

03310042若希望当A的值为奇数时,表达式的值为真,A的值为偶数时,表达式的值为假,则以下不能满足要求的表达式是( )。

选项:
A:A%2
B:A%2==1
C:!(A%2)
D:!(A%2==0)
答案: 【解锁后可见】

18、问题:03310052:设a=2,b=3,c=4,则表达式 a+b>c&&b==c&&a||b+c&&b+c的值为( )。
选项:
A:0
B:8
C:1
D:5
答案: 【解锁后可见】

19、问题:

03310062下列运算符中优先级最高的是 ( )。

选项:
A:+
B:<
C:&&
D:!=
答案: 【解锁后可见】

20、问题:03380011:逻辑运算符的优先级别高于算术运算符。( )
选项:
A:错
B:对
答案: 【解锁后可见】

21、问题:

03380021int a=0,b=1,c=2;则表达式a||b+c && b==c的值为 0。()

选项:
A:对
B:错
答案: 【解锁后可见】

22、问题:

03380031int a=0,b=1,c=2,x,y;则!(x=a)&&(y=b)&&c的值为1。()

选项:
A:错
B:对
答案: 【解锁后可见】

23、问题:03410011:已知各变量的类型说明如下:int k,a,b; unsigned long w=5;double x=1.42;下列表达式中不符合C语言语法的是(  )。
选项:
A:w+=-2
B: x%(-3)
C:k=(a=2,b=3,a+b)
D:a+=a-=(b=4)*(a=3)
答案: 【解锁后可见】

24、问题:

03410021设n=10,i=4,则赋值运算n%=i+1执行后,n的值是(  )。

选项:
A:0
B:1
C:3
D:2
答案: 【解锁后可见】

25、问题:

03410031以下叙述中正确的是(  )。

选项:
A:执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0。
B:a是实型变量,C语言允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值。
C:已有a=3,b=5当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3。
D:在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式。
答案: 【解锁后可见】

26、问题:03410051:设有int p,q;以下不正确的语句是( )。
选项:
A:p+=3;
B:p&&=q;
C:p/=q;
D:p*=3;
答案: 【解锁后可见】

27、问题:03410061:已知int x,y,z;执行语句x=(y=(z=10)+5)-5;后x、y、z的值是( )。
选项:
A:x=10 y=10 z=10
B:x=10 y=15 z=10
C:x=10 y=5 z=10
D:x=10 y=10 z=15
答案: 【解锁后可见】

28、问题:

03480011由赋值运算符将一个变量和一个表达式连接起来的式子称为”赋值表达式”。()

选项:
A:错
B:对
答案: 【解锁后可见】

29、问题:

03480021a=b=c=d=10;是一个合法的赋值语句。()

选项:
A:对
B:错
答案: 【解锁后可见】

30、问题:

03610021sizeof(float)是(  )。

选项:
A:一个整型表达式
B:一个双精度表达式
C:一个不合法的表达式
D:一种函数调用 
答案: 【解锁后可见】

31、问题:

03610031C语言中int、char和short三种类型数据在内存中占用的字节数( )。

选项:
A:是任意的
B:由所用机器的机器字长决定
C:由用户自己定义
D:均为2个字节
答案: 【解锁后可见】

32、问题:

03610041逗号表达式(a=3*5,a*4),a+15的值为(  )。

选项:
A:30
B:15
C:60
D:不确定
答案: 【解锁后可见】

33、问题:

03610062以下变量均为int类型,则值不等于7的表达式是( )。

选项:
A:(x=6,x+1,y=6,x+y) 
B:(y=6,y+1,x=y,x+1)
C:(x=y=6,x+y,x+1)
D:(x=y=6,x+y,y+1) 
答案: 【解锁后可见】

34、问题:

03610072以下符合C语言语法的赋值表达式是( )。

选项:
A:d=9+e,f=d+9
B:d=9+e,e++,d+9
C:d=9+e+f=d+9
D:d=e=f+7
答案: 【解锁后可见】

35、问题:

03610083以下使i的运算结果为4的表达式是( )。

选项:
A:int i=0,j=1; (j==1)?(i=1):(i=3);
B:int i=1,j=0; j=i=((i=3)*2);
C:int i=0,j=0; (i=3,(j++)+i);
D:int i=1,j=1; i+=j+=2;
答案: 【解锁后可见】

第四章 单元测试

1、问题:

04210012:以下程序的输出结果是( )。

int main( )

{

int m=5;

if(m++>5)

printf(“%d”,m);

else printf(“%d”,m–);

return 0;

}

选项:
A:6
B:4
C:7
D:5
答案: 【解锁后可见】

2、问题:

04210022以下程序的输出结果为( ) 。

int  main ( )

{

int i=0,j=0,a=6;

if ((++i>0)&&(++j>0))

a++;

printf (“i=%d, j=%d, a=%d\n”, i,j,a);

return 0;

}

选项:
A:i=1,j=0,a=7
B:i=1,j=1,a=7
C:i=0,j=0,a=6
D:i=0,j=1, a=7
答案: 【解锁后可见】

3、问题:

04210032以下程序的输出结果为( ) 。

int main()

{

int a=2,b=-1,c=2;

if (a )

if(b<0)

c=0;

else  c++;

printf(“%d”,c);

return 0;

}

选项:
A:3
B:1
C:0
D:2
答案: 【解锁后可见】

4、问题:

04210042若i为int型,且有程序如下,则输出结果是( )。

i=111;

if(i%3==0)

printf(“####”);

printf(“****”);

选项:
A: ####
B:####****
C:无输出结果
D: ****
答案: 【解锁后可见】

5、问题:

04280011变量a,b,c已赋初值,则语句if((a=b;)>0) c=a;是正确的。()

选项:
A:对
B:错
答案: 【解锁后可见】

6、问题:04280021:变量x,y,z已赋初值,则语句if((x=y+5)>0) z=x;是正确的。()
选项:
A:错
B:对
答案: 【解锁后可见】

7、问题:

04280031else语句总是和靠它最近的if匹配。()

选项:
A:对
B:错
答案: 【解锁后可见】

8、问题:

04310012若运行时x=12,则运行结果为( )。

int main( )

{

 int x, y;

scanf(“%d”, &x);

y=x>12 ? x+10:x-12;

printf(“%d\n”, y);

return 0;

}

选项:
A:10
B:0
C:12
D:22
答案: 【解锁后可见】

9、问题:

04310023以下程序的输出结果是(  )。

int main()

{

int i=0, j=0, k=6;

if ((++i>0)||(++j>0))

k++;

printf(“%d, %d, %d\n”, i, j, k);

return 0;

}

选项:
A:0, 0, 6
B:1, 1, 7
C:1, 0, 7
D:0, 1, 7
答案: 【解锁后可见】

10、问题:

04310032若变量都已正确说明,则以下程序段输出为( )。

int a=1,b=2,c=3;

if(a>b)

a=b;

b=c;

c=a;

printf(“a=%d b=%d c=%d\n”,a,b,c);

选项:
A:a=1 b=2 c=3
B:a=1 b=2 c=1
C:a=2 b=3 c=2
D:a=1 b=3 c=1
答案: 【解锁后可见】

11、问题:

04310042以下不正确的语句为( )。

选项:
A:if(x!=y) scanf(“%d”,&x);else scanf(“%d”,&y); 
B: if(x>y);
C:if(x)
D:if((x==y)&&(x!=0))x+=y;
答案: 【解锁后可见】

12、问题:

04410012写出下面程序输出结果(   )。

int main( )

int x=1, y=0, a=0, b=0;

switch(x)

{case 1:   switch(y)

{ case 0: a++;

case 1: b++;

}

case 2: a++; b++;

}

printf(“a=%d, b=%d\n”, a, b) ;

}

选项:
A:a=1, b=1 
B: a=2, b=2
C:a=1, b=0
D:a=2, b=1
答案: 【解锁后可见】

13、问题:

04480012switch语句中一定有default分支。()

选项:
A:对
B:错
答案: 【解锁后可见】

14、问题:

04480021case后只能跟常量,不能跟变量。()

选项:
A:错
B:对
答案: 【解锁后可见】

第五章 单元测试

1、问题:

05210012:现已定义整型变量int i=1;执行循环语句while(i++<5);后,i的值为( )。

选项:
A:A、B、C均不正确
B:6
C:1
D:5
答案: 【解锁后可见】

2、问题:

05210022:有程序段int k=10;while(k=0) k=k-1;则下面描述正确的是( )。

选项:
A:循环体语句一次也不执行
B:循环是无限循环
C:while 循环执行10次
D:循环体语句执行一次
答案: 【解锁后可见】

3、问题:

05210032:下列程序段的运行结果是(  )。

int n=0; while(n++<3); printf(“%d”,n);

选项:
A:以上都不对
B:4
C:3
D:2
答案: 【解锁后可见】

4、问题:

05210042:设有程序段t=0;while(printf(“*”)){ t++;if (t<3)break;} printf(“t=%d”,t);下面描述正确的是(  )。

选项:
A:其中循环控制表达式与’0’等价
B:其中循环控制表达式与0等价
C:以上说法都不对
D:其中循环控制表达式是不合法的
答案: 【解锁后可见】

5、问题:

05310012:以下程序段( )。

x=-1;

do

{ x=x*x;

}while(!x);
选项:
A:有语法错误
B:循环执行一次
C:循环执行2次
D:是死循环
答案: 【解锁后可见】

6、问题:

05310022:下面程序的运行结果是(  )。

int main()

{

int y=10;

do

{ y–;}

 while(–y);

printf(“%d\n”,y–);}

选项:
A:-1
B:8
C:0
D:1
答案: 【解锁后可见】

7、问题:

05310032:有语句int x=3; do { printf(“%d\n”,x-=2);} while(!(–x));则上面程序段(  )。

选项:
A:是死循环
B:输出的是1和-2
C:输出的是1 
D:输出的是3和0
答案: 【解锁后可见】

8、问题:

05510013:有以下程序:

int main( )

char i;

for (; (i=getchar ())!=’\n’;)

switch (i-‘a’)

{  

case 0: putchar (i);

case 1: putchar (i+1); break;

case 2: putchar (i+2);

case 3: break;

default:putchar (i); break;

}

}

printf (“\n”);}输入abcde后,程序的输出结果是( )。

选项:
A:abcde
B:abcee
C:abccdd
D:abbde
答案: 【解锁后可见】

9、问题:

05510042:以下程序段的输出结果是(  )。

int main()

{

 int i=5;

for ( ;i<=15; )

{

i++;

if (i%4==0)

printf(“%d “,i);

else

continue;

}

return 0;

}

选项:
A:8 12
B:8 12 16
C:12 16
D:8
答案: 【解锁后可见】

10、问题:

05480011:do-while语句构成的循环不能用其它语句构成的循环来代替。()

选项:
A:对
B:错
答案: 【解锁后可见】

11、问题:

05480021:用do-while语句构成循环时,只要while后的表达式为0时就结束循环。()

选项:
A:对
B:错
答案: 【解锁后可见】

12、问题:

05480031:while循环的while( )后没有分号,而do-while循环的while()后一定要有一个分号。()

选项:
A:对
B:错
答案: 【解锁后可见】

13、问题:05510021:C语言的for语句中的表达式可以部分或全部省略,但两个(  )不可省略。但当三个表达式均省略后,因缺少判断条件,循环会无限制地进行下去,形成死循环。
选项:
A:<
B:,
C:++
D:;
答案: 【解锁后可见】

14、问题:

05510031:下面有关for循环的正确描述是( )。

选项:
A:for循环是先执行循环体语句,后判定表达式。
B:for循环只能用于循环次数已经确定的情况。
C:for循环体语句中,可以包含多条语句,但要用花括号括起来。
D:在for循环中,不能用break语句跳出循环体。
答案: 【解锁后可见】

15、问题:05510052:以下不是无限循环的语句为( )。
选项:
A:for(i=10;  ; i–) sum+=i; 
B:while(1){x++;}  
C:for(y=0,x=1;x>++y;x=i++) i=x; 
D:for( ; ;x++=i); 
答案: 【解锁后可见】

16、问题:

05580011:for(表达式1;表达式2;表达式3)中,表达式1和表达式3不能同时都是逗号表达式。()

选项:
A:错
B:对
答案: 【解锁后可见】

17、问题:05580021:for循环中,如果表达式2为空,则该循环一定是死循环。()
选项:
A:对
B:错
答案: 【解锁后可见】

18、问题:05580031:for(i=0,j=10;i<=j;i++,j–) k=i+j;执行完后,k的值为50。()
选项:
A:对
B:错
答案: 【解锁后可见】

19、问题:

05580041:若a、b均为int型变量,且a=100,则for (b=100;a!=b;++a,b++) printf(“—-\n”)是死循环。()

选项:
A:对
B:错
答案: 【解锁后可见】

20、问题:05580051:执行语句:for(i=1;i++<4;++i);后;变量i的值是5。(
选项:
A:对
B:错
答案: 【解锁后可见】

21、问题:

05610012:以下程序输出结果为( )。

int main()

{

int i,b,k=0;

for(i=1;i<=5;i++)

{

b=i%2;

while (b–>=0)

k++;

}

printf(“%d,%d\n”,k,b);

return0;

}

选项:
A:3,-1
B:8,-1
C:3,0
D:8,-2
答案: 【解锁后可见】

22、问题:

05610021:以下程序段中循环体总的执行次数是( )。

int i,j;

for(i=7;i;i–)

for(j=0;j<6;j++)

{……}

选项:
A:21
B:36
C:42
D:13
答案: 【解锁后可见】

23、问题:

05710012:以下正确的描述是( )。

选项:
A:在循环体内使用break语句或continue语句的作用相同
B:continue语句的作用是结束整个循环的执行
C:从多层循环嵌套中退出时,只能使用goto语句
D:只能在循环体内和switch语句内使用break语句
答案: 【解锁后可见】

24、问题:

05710021:以下不正确的描述是( )。

选项:
A:在循环语句中使用continue是为了结束本次循环,而不是终止整个循环的执行。
B:break 语句不能用于循环语句和switch语句外的任何其他语句
C:在switch语句中使用break语句或continue语句的作用相同。
D:在循环语句中使用break是为了使流程跳出循环体,提前结束循环。
答案: 【解锁后可见】

25、问题:

05780011:break语句的作用就是结束本层循环。()

选项:
A:对
B:错
答案: 【解锁后可见】

第六章 单元测试

1、问题:06110011:C语言中,数组名代表( )。
选项:
A:数组首地址
B:数组第一个元素的值 
C:数组全部元素的值
D:数组元素的个数 
答案: 【解锁后可见】

2、问题:

06110021:以下关于数组的描述正确的是 ( ) 。

选项:
A:数组的大小是固定的,所有数组元素的类型必须相同
B:数组的大小是固定的,但可以有不同的类型的数组元素
C:数组的大小是可变的,但所有数组元素的类型必须相同
D:数组的大小是可变的,可以有不同的类型的数组元素
答案: 【解锁后可见】

3、问题:06110031:在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。
选项:
A:整型常量或整型表达式
B:整型常量
C:整型表达式
D:任何类型的表达式
答案: 【解锁后可见】

4、问题:

06110041:设array为一数组,则表达式sizeof(array)/sizeof(array[0])的结果为( )。

选项:
A:array数组占的总字节数
B: array数组首地址
C: array数组中每个元素所占的字节数
D:array数组中元素个数
答案: 【解锁后可见】

5、问题:

06210011:以下对一维数组a的正确说明是()。

选项:
A:int k=5,a[k];
B:int a[ ];
C:char a[ ]={‘a’,’b’, ‘c’};
D:char a(10);
答案: 【解锁后可见】

6、问题:

06210021:下面程序中有错误的行是( )。

1、int main(  )

2、{

3、   int x[3]={1};

4、   int k;

5、   scanf(“%d”, &x);

6、   for (k=1; k<3; k++)

7、     x[0]=x[0]+x[k];

8、   printf(“x[0]=%d”, x[0]);

9、   return 0;

10、}

选项:
A:6
B:5
C:7
D:3
答案: 【解锁后可见】

7、问题:

06210031:若有以下语句,则正确的描述是( )。

char x[ ]=”12345″;char y[ ]={‘1’, ‘2’, ‘3’, ‘4’, ‘5’};




选项:
A:x数组长度小于y数组长度
B:x数组等价于y数组
C:x数组长度大于y数组长度
D: x数组与y数组的长度相同
答案: 【解锁后可见】

8、问题:

06210041:以下不正确的数组定义语句是( )。

选项:
A:double x[5]={2.0, 4.0, 6.0, 8.0, 10.0};
B:int y[5]={0, 1, 3, 5, 7, 9};
C:char ch1[ ]={‘1’, ‘2’, ‘3’, ‘4’, ‘5’};
D:char ch2[ ]={‘\x10’, ‘\xa’, ‘\x8’};
答案: 【解锁后可见】

9、问题:

06210051:以下正确的数组定义语句是( )。

选项:
A:int b[2][ ]={{1}, {2}};
B:char a[5]={‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘\0’};
C:char d[5]=”CHINA”;
D:float c[ ][3]={1, 2, 3, 4, 5};
答案: 【解锁后可见】

10、问题:

06210061:下列一维数组正确初始化是( )。

选项:
A: int a[2]={12,3,4,5};
B:int *a={12,3,4,5};
C:int a[5] ={1,2};
D:int a[5]={,,1,2};
答案: 【解锁后可见】

11、问题:

06210071:不能对以下数组进行初始化的语句的是( )。

选项:
A:int  a[2]; a[0]=1; a[1]=2;
B:int a[2]={0};
C: int a [2] =[1,2] ; 
D: int a[2]={10*1};
答案: 【解锁后可见】

12、问题:06210081:若定义int m[10]={9,4,12,8,2,10,7,5,1,3};则m[m[4]+m[8]]的值是()。
选项:
A:12
B:10
C:8
D:7
答案: 【解锁后可见】

13、问题:06210091:以下对一维数组 a 的定义正确的是( )。
选项:
A: int a[0..100];
B:int k=10;int a[k];
C:char a(10); 
D:int a[5]; 
答案: 【解锁后可见】

14、问题:06210101:若有说明int a[10];则对数组元素正确的引用是( )。
选项:
A:a[10]
B:a[3.5]
C:a(0)
D:a[0]
答案: 【解锁后可见】

15、问题:06210111: 对说明语句int a[10]={6,7,8,9,10};理解正确的是()。
选项:
A:将5个初值依次赋给a[0]至a[4]。
B:将5个初值依次赋给a[1]至a[5]。
C:将5个初值依次赋给a[6]至a[10]。
D:因为数组长度与初值个数不同,所以语句不正确。
答案: 【解锁后可见】

16、问题:

06210121:下列程序的输出结果是( )。

int main()

{

int a=0, b[3];

b[0]=3;

printf(“%d,%d”,b[0];b[1]);

return 0;}

选项:
A:3,0
B:3 0
C:3,不定值
D:0,3
答案: 【解锁后可见】

17、问题:

06210132:以下程序运行后 ,输出结果是( )。

int main()

{

int n[5]={0,0,0},i,k=2;

for(i=0;i<k;i++) 

n[i]=n[i]+1;

printf(“%d\n”,n[k]);

return 0;

}

选项:
A:1
B:0
C:不确定值
D:2
答案: 【解锁后可见】

18、问题:

06210141:以下对一维整型数组 a 的正确说明是(  ) 。

选项:
A:int n=10,a[n]; 
B:#define SIZE 10 int a[SIZE];
C:int n; scanf(“%d”,&n); int a[n]; 
D:int a(10);
答案: 【解锁后可见】

19、问题:

06210152:执行下面的程序段后,变量k中的值为( ) 。

int k=3, s[2];

s[0]=k; k=s[1]*10;

选项:
A:不确定值
B:30
C:10
D:33
答案: 【解锁后可见】

20、问题:06210161:已知short int类型变量在内存在占两个字节,有如下定义 short int array[10]={0,2,4}则数组array在内存所占的字节数为( )。
选项:
A:20
B:10
C:3
D:6
答案: 【解锁后可见】

21、问题:06310011:下列二维数组的初始化哪一个不针对三行四列二维数组()。
选项:
A:int a[][4]={{1},{5},{9}};
B:int a[][4]={{1},{0,6},{0,0,11}};
C:int a[3][4] ={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
D:int a[][4]={1,0,0,0,5,6};
答案: 【解锁后可见】

22、问题:06310021:若有说明语句:int a[2][4];则对a数组元素的正确引用是( )。
选项:
A:a[2][2] 
B:a[0][3] 
C:a[0][4]
D:a[2][2+1]
答案: 【解锁后可见】

23、问题:06310031:以下能对二维数组y进行初始化的语句是( )。
选项:
A:static int y[2][4]={{1,2,3}, {4,5} , {6}};
B:static int y[ ][3]={{1,2,3}, {4,5,6}};
C:static int y[2][ ]={{1,0,1}, {5,2,3}};
D:static int y[ ][3]={{1,0,1,0}, { }, {1,1}};
答案: 【解锁后可见】

24、问题:

06310041若有说明语句:int y[ ][4]={0,0};则下面叙述不正确的是( )。

选项:
A:二维数组y的行数为1。
B:数组y的每个元素都可得初值0。
C:只有元素y[0][0]和y[0][1]可得到初值0,其余元素均得不到初值0。
D:该说明等价于int y[ ][4]={0};
答案: 【解锁后可见】

25、问题:

06310051以下各组选项中,均能正确定义二维实型数组s的选项是( )。

选项:
A:float s[3][4];static float s[][4]={{0},{0}};auto float s[][4]={{0},{0},{0}};
B:float s[3][4];float s[ ][4];float s[3][ ]={{1},{0}};
C:float s[3][4];float s[3][ ];float s[ ][4];
D:float s(3,4);float s[ ][ ]={{0},{0}};float s[3][4];
答案: 【解锁后可见】

26、问题:06310061:若有说明语句:int a[ ][3]={1,2,3,4,5,6,7,8};则a数组的行数为( )。
选项:
A:1
B:2
C:无确定值
D:3
答案: 【解锁后可见】

27、问题:

06310071若二维数组y有m列,则在y[i][j]前的元素个数为( )。

选项:
A: i*m+j-1
B:j*m+i 
C: i*m+j
D:i*m+j+1
答案: 【解锁后可见】

28、问题:

06310081以下定义语句错误的是()。

选项:
A: int x[][3]={{0},{1},{1,2,3}};
B:int x[4][3]={ {1,2,3},{1,2,3},{1,2,3},{1,2,3}};
C:int x[][3]={{1,2,3,4}};
D:int x[4][]= { {1,2,3},{1,2,3},{1,2,3},{1,2,3}};
答案: 【解锁后可见】

29、问题:06310091:若有以下定义:int a[ ][2]={1,2,3,4,5,6,7};则数组a第一维大小是( )。
选项:
A:3
B:4
C:5
D:不确定
答案: 【解锁后可见】

30、问题:06310101:以下对二维数组的定义中正确的是( )。
选项:
A: int a[][]={{1,2,3},{4,5,6}};
B:int a[][3]= {1,2,3,4,5,6};
C:int a[4][]={1,2,3,4,5,6};
D:int a[][3]; 
答案: 【解锁后可见】

31、问题:

06310111以下程序的输出结果是( )。

int main()

{

int a[4][4]={{1,3,5},{2,4,6},{3,5,7}}; printf(“%d%d%d%d”,a[0][3],a[1][2],a[2][1],a[3][0]);

return 0;} 

选项:
A:0650
B:5430
C:1470
D:不确定
答案: 【解锁后可见】

32、问题:

06410011与char str[]={“china”};初始化赋值不等价的是( )。




选项:
A:char str[6]={‘c’,’h’,’i’,’n’,’a’,’\o’};
B:char str[]={‘c’,’h’,’i’,’n’,’a’};
C: char str[]=“china”;
D:char str[]={‘c’,’h’,’i’,’n’,’a’,’\o’};
答案: 【解锁后可见】

33、问题:

06410021char array[]={‘c’,’h’,’i’,’n’,’a’};数组array占用的内存空间是( )个字节。

选项:
A:不确定
B:1
C:6
D:5
答案: 【解锁后可见】

34、问题:

06410031判断字符串str1是否大于字符串str2,应当使用( )。

选项:
A:if (strcmp(str1, str2))
B: if (str1>str2)
C:if (strcmp(str1, str2)>0)
D:if (strcmp(str2, str1)>0)
答案: 【解锁后可见】

35、问题:06410051:有两个字符数组a,b,则以下能正确为a,b进行赋值的语句是( )。
选项:
A:scanf(“%s%s”, &a, &b);
B:getchar(a); getchar(b);
C:gets(a); gets(b);
D:gets(a, b);
答案: 【解锁后可见】

36、问题:06410061:有字符数组s1[80]和s2[80],则以下能正确对s1, s2进行输出的语句是( )。
选项:
A:putchar(s1, s2);
B:puts(s1), puts(s2);
C:puts(s1, s2)
D:printf(“%s, %s”, s1, s2);
答案: 【解锁后可见】

37、问题:

06410071以下程序段的运行结果是( )。

char a[7]=”abcdef”;

char b[4]=”ABC”;

strcpy(a, b);

printf(“%c”, a[5]);

选项:
A:e
B:\0

C:└┘
D:f
答案: 【解锁后可见】

38、问题:

06410081以下描述正确的是( ) 

选项:
A:两个字符串所包含的字符个数相同时,才能比较字符串
B:字符串”That”小于字符串”The”
C:字符串”STOP└┘”与”STOP”相等
D:字符个数多的字符串比字符个数少的字符串大
答案: 【解锁后可见】

39、问题:

06410091以下对字符数组的描述中错误的是( )。

选项:
A:字符数组中可以存放字符串
B:字符数组中的字符串可以整体输入、输出
C:不可以用关系运算符对字符数组中的字符串进行比较
D:可以在赋值语句中通过赋值运算符”=”对字符数组整体赋值
答案: 【解锁后可见】

40、问题:

06410101若有语句:char s1[10], s2[10]={“books”},则能将字符串books赋给数组s1的正确语句是( )。

选项:
A: strcpy(s1,s2);
B:s1={“books”};
C: s1=s2;
D:strcpy(s2,s1);
答案: 【解锁后可见】

41、问题:06410121:下面程序的功能是将字符串s中所有的字符c删除。请选择填空。( )

#include <stdio.h>

int main(  )

{

 char s[80];

  int i, j;

  gets(s);

  for (i=j=0; s[i]!=’\0’;i++)

    if (s[i]!=’c’)           ;

  s[j]=’\0’;

  puts(s);

return 0;

}

选项:
A:s[j]=s[i]
B:s[j++]=s[i]
C:s[++j]=s[i]
D:;
答案: 【解锁后可见】

42、问题:

06410141下面程序的运行结果是()。

#include <stdio.h>

    #include <string.h>

    int main(  )

{

char x[80]=”AB”, y[80]=”LMNP”;

  int n=0;

  strcat(x, y);

      while (x[n++]!=’\0′)

        y[n]=x[n];

      puts(y);

return 0;

    }

选项:
A:LB
B: AB
C:ABLMNP
D:LBLMNP
答案: 【解锁后可见】

第七章 单元测试

1、问题:

07110011C程序的基本结构单位是()

选项:
A:表达式
B:函数
C:文件

D:语句
答案: 【解锁后可见】

2、问题:

07110021一个C语言程序的执行是()

选项:
A:从程序的主函数卖main()开始到最后一个函数结束
B:从程序的第一个函数开始到最后一个函数结束
C:从程序的第一个函数开始到程序的主函数main()结束
D:从程序的主函数main()开始到主函数main()结束
答案: 【解锁后可见】

3、问题:

07210011下列函数定义正确的是()

选项:
A:double fun(int x;int y)
B:double fun(int x, y;)
C:double fun(int x,int y) 
D: double fun(int x, y) 
答案: 【解锁后可见】

4、问题:

07210021下面说法不正确的是()

选项:
A:在源文件中可以用不同的顺序定义函数
B:通常调用函数前函数必须被定义或声明
C:Dummy(){}是无用的函数
D:通常C程序是由许多小函数组成的,而不是由少量的大函数组成的
答案: 【解锁后可见】

5、问题:07310011:若函数的形参为一维数组,则下列说法中正确的是()
选项:
A:形参数组可以不指定大小
B:形参数组的元素个数必须多于实参数组的元素个数
C:形参数组的元素个数必须等于实参数组的元素个数
D:调用函数时的对应实参必为数组名
答案: 【解锁后可见】

6、问题:

07310021有以下函数调用语句:func(rec1,rec2+rec3,rec4);该函数调用语句中含有的实参个数是()

选项:
A:3

B:有语法错
C:5
D:4
答案: 【解锁后可见】

7、问题:

07510011下面程序的结果是()

#include <stdio.h>

increment()

{

   static int x=0;

   x+=1;

   printf(“%d”,x);

}

void main()

{

increment();

increment();

increment();

}

选项:
A:1 1 1
B:1 2 3 
C:0 0 0
D:0 1 2
答案: 【解锁后可见】

8、问题:07510021:下面叙述正确的是()
选项:
A:全局变量在程序的全部执行过程中一直占用内存单元
B:同一文件中的变量不能重名
C:使用全局变量有利于程序的模块化和可读性的提高
D:全局变量的定义它的文件中的任何地方都是有效的
答案: 【解锁后可见】

9、问题:

07510031在C语言中,局部变量的隐含存储类别是()

选项:
A:auto
B:register
C:static
D:无存储类别
答案: 【解锁后可见】

第八章 单元测试

1、问题:

08110012:有以下说明语句,则下面的叙述不正确的是( )。

typedef struct stu{

int a;

float b

}stutype;

选项:
A:struct stu是用户定义的结构体类型名
B:a和b都是结构体成员名
C:struct是结构体类型的关键字
D:stutype是用户定义的结构体类型名
答案: 【解锁后可见】

2、问题:

08110021:当说明一个结构体变量时系统分配给它的内存是( )。

选项:
A:成员中所占内存量最大者所需的容量
B:结构体中最后一个成员所需内存量 
C:结构体中第一个成员所需内存量
D:各成员所需内存量的总和
答案: 【解锁后可见】

3、问题:

08110032:下列输出字符‘M’的语句是()。

struct person{

char name[9];

int age;

};

struct person class[10]={“John”,17,”paul”,19,”Mary”,18,”Adam”,16};

选项:
A:printf(“%c”,class[3].name[1]);
B: printf(“%c”,class[2].name[1]);
C: printf(“%c”,class[3].name);
D:printf(“%c”,class[2].name[0]);
答案: 【解锁后可见】

4、问题:

08110042:下列关于结构体变量操作中正确的是()。

struct student{

   char num[10];

   char name[20],sex;

   int age;

   float score[3];

   float ave;};

选项:
A: stu2={“2008002″,”GaoPing”,’M’,18,86.3,80.5,89.4,85.4};
B:struct student stu1={“2008001″,”LiNing”,’M’,19,84.3,82.5,89.4,85.4};
C:if (stu1==stu2)
D: printf(“%10s %20s %c %3d %4.1f %4.1f %4.1f %4.1”,stu1);
答案: 【解锁后可见】

5、问题:

08110052:以下定义结构体类型的变量st1,其中不正确的是()。

选项:
A: typedef struct student{

int num;

int age;

}STD;

STD st1;
B:  struct student{

int num ,age;

}st1;
C: struct student{

  int num;

int age;

};

student st1;
D: struct{

  int num;

float age;

}st1;
答案: 【解锁后可见】

6、问题:

08110062:已知职工记录描述为:

struct workers{

   int  no;

   char name[20];

char sex;

struct{

   int day;

int month;

int year;

}birth;

};

struct workers w;设变量w中的“生日”应是“1993年10月25日”,下列对“生日”的正确赋值方式是()。

选项:
A:w.day=25;w.month=10;w.year=1993;
B:w.birth.day=25;w.birth.month=10;w.birth.year=1993;
C:day=25;month=10;year=1993;
D:birth.day=25;birth.month=10;birth.year=1993;
答案: 【解锁后可见】

7、问题:

08210012:当说明一个共用体变量则系统分配给它的内存是(  )。

选项:
A:所有成员一直驻留在内存中
B:只有一个成员驻留现在内存中
C:部分成员驻留在内存中
D:没有成员驻留在内存中
答案: 【解锁后可见】

8、问题:

08310012:设有枚举类型定义:enum color={red=3,yellow,blue=10,white,black};其中枚举量black的值是()。

选项:
A:14
B:12
C:7
D:15
答案: 【解锁后可见】

9、问题:08310022:关于下面变量赋值不正确的是()。

enum NUM{zero,first,second}num1;

int num2;

选项:
A:num1=zero;num2=0;
B:num1=0;num2=zero;
C:num1=0;num2=0;
D:scanf(“%d%d”,&num1,&num2);
答案: 【解锁后可见】

10、问题:

08310032:如下说明语句:

enum A{A0=1,A1=3,A2,A3,A4,A5};

enum A b;

执行b=A3;printf(“%d”,b);输出是()。

选项:
A:2
B:3
C:编译出错
D:5
答案: 【解锁后可见】

第九章 单元测试

1、问题:

09110011:变量的指针,其含义是指该变量的( )。


选项:
A:名

B:值
C:一个标志
D:地址

答案: 【解锁后可见】

2、问题:

09110022:已有定义int k=2;int *ptr1.*ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是( )。

选项:
A:ptr=k;
B:k=*ptr1*(*ptr2);
C:ptr1=ptr2;
D:k =*ptr1+*ptr2;
答案: 【解锁后可见】

3、问题:

09110032:若有以下说明和定义,则叙述正确的是( )。

    typedef  int  *INTEGER;

    INTEGER p,*q;

选项:
A:p是int 类型
B:q是指向int 的指针变量
C:p是指向int 的指针变量
D:程序中可用INTEGER代替int类型名
答案: 【解锁后可见】

4、问题:09110042:若有说明:int i,j=2,*p=&i;则能完成i=j赋值功能的语句是(  )。
选项:
A:i=*p;
B:*p=*&j;
C:i=**p;
D:i=&j;
答案: 【解锁后可见】

5、问题:

09110052:若有说明:int *p,m=5,n;以下正确的程序段是( )。

选项:
A:p=&n; *p=m;
B:scanf(“%d”,&n);*p=n;
C:p=&n; scanf(“%d”, &p);
D:p=&n;scanf(“%d”,*p);
答案: 【解锁后可见】

6、问题:

09110062:有语句int *p,a[4];p=a;下列表示与a[1]不等价的形式是()。

选项:
A:*(p+1)
B:p[1] 
C:*p++
D:*a++
答案: 【解锁后可见】

7、问题:

09110072: 以下程序执行后的输出结果是()。

int main(){

          int a[]={1,2,3,4},y,*p=&a[1];

          y=(*–p)++;

          printf(“%d”,y);

return 0;

}

选项:
A:3
B:4
C:2
D:1
答案: 【解锁后可见】

8、问题:09110082:语句int *p;说明了(   )
选项:
A:p是对指向int型数据指针取内容
B:p是指向返回值为一int型数据的函数
C:p是指向一维数组的指针 
D:p是指向int型数据的指针变量
答案: 【解锁后可见】

9、问题:

09110092:若已定义:int b[12],*p=b;在以后的语句中未改变p的值,则不能表示b[1]地址的表达式是( )。




选项:
A:++p
B:p+1
C:b+1
D:++b
答案: 【解锁后可见】

10、问题:

09110102:设有如下定义:

struct sk{

  int a;

float b;

}data,*p;若有p=&data;则对data中的a成员的正确引用是()。

选项:
A:p.data.a
B:(*p).a
C:p->data.a
D:(*p).data.a
答案: 【解锁后可见】

11、问题:

09210012:如下程序 int a[10]={1,2,3,4,5,6,7,8,9,10},*P=a; 则数值为9的表达式是( )

选项:
A:*(P+8)
B: P+8
C:*P+9 
D: *P+=9
答案: 【解锁后可见】

第十章 单元测试

1、问题:

10110011下列关于C语言数据文件的叙述中正确的是()。

选项:
A:文件有ASCII码字符序列组成,C语言只能读写文本文件
B:文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件
C:文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件
D:文件由二进制数据序列组成,C语言只能读写二进制文件
答案: 【解锁后可见】

2、问题:

10110021C语言中能识别处理的文件为( )。

选项:
A:流文件和文本文件
B:文本文件和数据块文件
C:文本文件和二进制文件
D:数据文件和二进制文件
答案: 【解锁后可见】

3、问题:

10210011:如执行fopen函数时发生错误,则函数的返回值是( )。

选项:
A:1
B:地址值
C:TRUE
D:NULL
答案: 【解锁后可见】

4、问题:

10210032:若要打开A盘上user子目录下名为“abc.txt”的文本文件进行度、写操作,线面符合此要求的函数调用是()。

选项:
A:fopen(“A:\user\abc.txt”,”rb”);
B:fopen(“A:\user\abc.txt”,”w”);
C:fopen(“A:\user\abc.txt”,”r+”);
D:fopen(“A:\user\abc.txt”,”r”);
答案: 【解锁后可见】

5、问题:

10210042:fread(buf,64,2,fp)的功能是()。

选项:
A:从fp所指向的文件中,读出整数64,并存放在buf中;
B:从fp所指向的文件中,读出64个字节的字符,读两次,并存放在buf地址中
C:从fp所指向的文件中,读出64个字节的字符,并存放在buf地址中;
D:从fp所指向的文件中,读出整数64和2,并存放在buf中;
答案: 【解锁后可见】

6、问题:

10210052以下程序的功能是()。

       int main()

{

   FILE*fp;

   char str[]=”Qingdao 2018 ”;

   fp=fopen(“file2”,”w”);

   fputs(str,fp);

fclose(fp);

return 0;}

选项:
A:把“Qingdao 2018”存入file2文件中
B:在打印机上打印出“Qingdao 2018”
C:以上都不对
D:在屏幕上显示“Qingdao 2018”
答案: 【解锁后可见】

7、问题:

10210062以下程序是建立一个名为myfile的文件,并把从键盘输入的字符存入该文件,当键盘上输入结束时关闭该文件,正确的选择是( )。

int main()

{

   FILE *fp;

   char c;

char  name [10];

fp=_______(“myfile”,______);

do

{

   c=getchar();

   fputc(c,fp);

}while(c!=EOF);

fclose(fp);

return 0;

}

选项:
A:fopen  “r”
B:fopen  “w”
C:fgets  “r”
D:fgetc  ”w”
答案: 【解锁后可见】

8、问题:

10310011:函数调用语句:fseek(fp,-20L,2);的含义是()。

选项:
A:将文件位置指针移到距离文件末尾20个字节处;
B:将文件位置指针移到距离文件头20个字节处;
C:将文件位置指针移到离当前位置20个字节处;
D:将文件位置指针从当前位置向后移20个字节;
答案: 【解锁后可见】

9、问题:

10310021:函数rewind的作用是()。




选项:
A:将位置指针指向文件中所要求的特定位置 
B:使位置指针指向文件的末尾
C:使位置指针自动移至下一个字符位置
D:使位置指针重新返回文件的开头
答案: 【解锁后可见】

#版权声明# 本站所有资源来自网络收集和网友投稿,不代表大学题库立场。本站所提供资源均只能用于参考学习用,请勿直接商用。如若本站内容侵犯了您的合法权益,可联系我们进行删除处理。点我联系站长

(0)

相关推荐

  • 材料科学基础(山东理工大学)-知到答案、智慧树答案

    第一章 单元测试 1、问题: 晶体与非晶体的本质区别在于晶体中存在长程有序而非晶体中不存在长程有序。选项:A:对B:错答案: 【解锁可见】 2、问题: 只有那些自由能趋于降低的过程才能自发进行。选项:A:对B:错答案: 【解锁可见】 3、问题: 结合能是把两个原子完全分开需要的力,因此结合能越大,原子结合越不稳定。选项:A:对B…

    2023年8月4日
    640
  • Basic Chemistry 基础化学-知到答案、智慧树答案

    第一章 单元测试 1、问题:Solids have a __________ shape and are not appreciably __________.选项:A:sharp, convertibleB:indefinite, compressibleC:indefinite, incompressibleD:definite, incompressi…

    2023年7月18日
    940
  • 本草湖南-知到答案、智慧树答案

    第一章 单元测试 1、问题: 本草学就是中药学。选项:A:错B:对答案: 【解锁可见】 2、问题: “本草”一词曾代指官职。选项:A:对B:错答案: 【解锁可见】 3、问题: 汉字“药”在古代汉语中只有一个读音。选项:A:错B:对答案: 【解锁可见】 4、问题: 本草学的研究内容不包括中药文献。选项:A:错B:对答案:…

    2023年8月1日
    520
  • 朝鲜韩国的政治与对外关系-知到答案、智慧树答案

    第一章 单元测试 1、问题: 二战后,美国全球军事战略重心随着国际形势和美国实力的变化,历经了哪3个阶段? 选项:A:欧洲-澳洲-非洲B:美洲-欧洲-亚太C:欧洲-北美-非洲D:欧洲-中东-亚太答案: 【解锁可见】 2、问题: 美国推进“亚太再平衡战略”,计划在军事上的战略目标是: 选项:A: 在2020年将美国战舰的70%部署在亚太地区B: 在2020年将…

    2023年8月6日
    530