当前位置:首页 >课程 >C程序设计

1、下面程序的输出结果是: #include using namespace std; int main() { int a=3; printf("a=%d,",a); a=a+1; printf("a=%d,",a); a*=2; printf("a=%d\n",a); return 1; }

A.程序出错,不能正确运行,因为a=a+1不成立
B.a=3
C.a=3,a=4,a=8
D.a=3 a=3 a=3

参考答案:请扫码使用小程序查看答案

2、若有定义:int a,*p = &a;,假设变量a的指针是1000,sizeof(int)的值是4,则p+5的计算结果是_____。

A.1000
B.1005
C.1020
D.p+5是不正确的表达式

参考答案:请扫码使用小程序查看答案

3、若有说明语句:int a,b;,用户的输入为111222333,结果a的值为111,b的值为333,那么以下输入正确的语句是______。

A.scanf("%*3d%3c%3d",&a,&b);
B.scanf("%3d%3d%*3d",&a,&b);
C.scanf("%3d%*3c%3d",&a,&b);
D.scanf("%3d%*2d%3d",&a,&b);

参考答案:请扫码使用小程序查看答案

4、已知 int x=10, y=20, z=30; 以下语句执行后 ,x ,y ,z 的值是_____。 if(x>y) z = x; x = y; y = z;

A.x = 10, y = 20, z = 30
B.x= 20, y = 30, z = 30
C.x =20, y=30, z = 10
D.x = 20, y = 30, z = 20

参考答案:请扫码使用小程序查看答案

5、_____不是程序控制语句,是C语言的标准库函数,但可以用于控制程序的流程。

A.break
B.continue
C.goto
D.exit

参考答案:请扫码使用小程序查看答案

6、1972年,美国贝尔实验室的Dennis M.Ritchie在_____语言的基础设计出了C语言,被称为C语言的鼻祖。

A.BASIC
B.FORTRAN
C.B
D.ALGOL 60

参考答案:请扫码使用小程序查看答案

7、以下不能对二维数组进行正确初始化的语句是:

A.double d[][2]={1,2,3,4,5,6,7};
B.double d[][2]={{1},{2,3},{4,5,6}};
C.double d[3][3]={{1,2,3},{4,5},{6}};
D.double d[][3]={{1,2},{3,4},{5,6}};

参考答案:请扫码使用小程序查看答案

8、以下叙述中不正确的是:

A.在不同的函数中可以使用相同名字的变量。
B.函数中的形式参数是局部变量。
C.在一个函数内定义的变量只在本函数范围内有效。
D.在一个函数内的复合语句中定义的变量在本函数范围内有效。

参考答案:请扫码使用小程序查看答案

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

A.k = *ptr1+*ptr2;
B.ptr2 = k ;
C.ptr1 = ptr2;
D.k = *ptr1 *(*ptr2);

参考答案:请扫码使用小程序查看答案

10、若有说明:int *p1,*p2,m = 5,n; 以下均是正确赋值语句的选项是______。

A.p1 = &m; p2 = &p1;
B.p2 = &n; *p1 = *p2;
C.p1 = &m; p2 = p1;
D.p1 = &m; *p2 = *p1;

参考答案:请扫码使用小程序查看答案

11、下列关于switch语句的描述中,正确的是_____。

A.switch语句中default子句可以没有,也可以有一个
B.switch语句中的每个语句序列中必须有break语句
C.switch语句中的case子句后面的表达式可以是包含变量的整型表达式
D.switch语句中default子句只能放在最后

参考答案:请扫码使用小程序查看答案

12、以下描述正确的是_____。

A.continue语句的作用是结束整个循环的执行
B.只能在循环体内和switch语句体内使用break语句
C.在循环体内使用break和continue语句的作用相同
D.从多层循环嵌套中退出时,可以使用continue语句

参考答案:请扫码使用小程序查看答案

13、下面程序的输出结果是_______。 int k=11; printf("%d,%o,%x\n",k,k,k);

A.11,12,11
B.11,13,13
C.11,013,0xb
D.11,13,b

参考答案:请扫码使用小程序查看答案

14、______用于控制程序的流程,实现程序的选择结构和循环结构。

A.选择语句
B.循环语句
C.控制语句
D.函数调用语句

参考答案:请扫码使用小程序查看答案

15、若使用一维数组名作函数参数,则以下正确的说法是:

A.必须在调用函数中说明此数组的大小。
B.实参数组类型与形参数组类型可以不匹配。
C.在被调用函数中,不需要考虑形参数组的大小。
D.实参数组名与形参数组名必须一致。

参考答案:请扫码使用小程序查看答案

16、以下程序运行后的输出结果是______。 int x=011; printf("%d\n",++x);

A.12
B.11
C.10
D.9

参考答案:请扫码使用小程序查看答案

17、若有语句int *point,a=4; 和 point = &a;下面均代表地址的一组选项是_____。

A.a,point,*&a
B.&*a,&a,*point
C.*&point,*point,&a
D.&a,point,&*point

参考答案:请扫码使用小程序查看答案

18、凡是函数中未指定存储类别的局部变量,其隐含的存储类别为:

A.auto
B.static
C.extern
D.register

参考答案:请扫码使用小程序查看答案

19、C语言编译程序的首要工作是_____。

A.检查C语言程序的语法错误
B.检查C语言程序的逻辑错误
C.检查程序的完整性
D.生成目标文件

参考答案:请扫码使用小程序查看答案

20、阅读以下程序,如果从键盘上输入5,则正确的输出结果是_____。 void main( ) { int x; scanf("%d",&x); if( x-- < 5) printf("%d",x); else printf("%d",x++); }

A.3
B.4
C.5
D.6

参考答案:请扫码使用小程序查看答案

21、假设输入48 18,下列程序的运行结果是_____。 void main() { int n,m,r; scanf("%d%d",&n,&m); do{ r = n%m; n=m,m=r; }while(r); printf("%d\n",n); }

A.12
B.6
C.3
D.2

参考答案:请扫码使用小程序查看答案

22、关于以下三条语句的描述中,正确的是_______。  1.if(a) a=1;else a=2; ‚ 2.if(a==0) a=2;else a=1; ƒ 3.if(a!=0) a=1;else a=2;

A.三条语句相互等效
B.三条语句中2‚与3ƒ等效
C.三条语句中1‚与2‚等效
D.三条语句各不等效

参考答案:请扫码使用小程序查看答案

23、在以下不同进制的4个数中,最小的一个数是:

A.(11000110)2
B.(307)8
C.(200)10
D.(B6)16

参考答案:请扫码使用小程序查看答案

24、对for(表达式1;;表达式3)可理解为_____。

A.for(表达式1;0;表达式3)
B.for(表达式1;1;表达式3)
C.for(表达式1;表达式1;表达式3)
D.for(表达式1;表达式3;表达式3)

参考答案:请扫码使用小程序查看答案

25、C语言属于_____。

A.机器语言
B.低级语言
C.中级语言
D.高级语言

参考答案:请扫码使用小程序查看答案

26、以下程序的输出结果是______。 void main() { int a,b; for(a=1,b=1; a<=100; a++) { if(b>=10) break; if(b%5==1) { b+=5; continue;} } printf("%d\n",a); }

A.101
B.6
C.4
D.3

参考答案:请扫码使用小程序查看答案

27、执行下面程序时,欲将25和2.5分别赋给a和b,正确的输入方法是______。 int a; float b; scanf("a=%d,b=%f",&a,&b);

A.25 2.5
B.25,2.5
C.a=25,b=2.5
D.a=25 b=2.5

参考答案:请扫码使用小程序查看答案

28、当a=3,b=2,c=1时,表达式f=a>b>c的值是_______。

A.2
B.-1
C.1
D.0

参考答案:请扫码使用小程序查看答案

29、下面程序的运行结果是_____。 #include void main() { int y=10; do{ --y; } while(--y); printf("%d\n",y--); }

A.0
B.-1
C.1
D.2

参考答案:请扫码使用小程序查看答案

30、下面程序的输出结果是: #include using namespace std; int main () { int a[]={4,0,2,3,1},i,j,t; for(i=1;i<5;i++) { t=a[i];j=i-1; while(j>=0&&t>a[j]) { a[j+1]=a[j]; a[j]=t; j--; } } for(i=0;i<5;i++) printf("%3d",a[i]); printf("\n"); return 0; }

A.4 0 2 3 1
B.0 1 2 3 4
C.4 3 2 1 0
D.1 3 2 0 4

参考答案:请扫码使用小程序查看答案

31、下列常量中不是字符型常量的是_____。

A.'\x44'
B.'\t'
C.'\\'
D."m"

参考答案:请扫码使用小程序查看答案

32、下列有关scanf函数的描述,正确的是_____。

A.scanf(“%f”,12.3);
B.scanf(“a=%d,b=%d”);
C.scanf(“%6.5f”,&a);
D.scanf(“%f”,&a);

参考答案:请扫码使用小程序查看答案

33、以下错误的数组定义是

A.double d[1+2+3];
B.#define N 10 int a[N+2];
C.float f[10+'A']
D.int n=10; int a[n+2];

参考答案:请扫码使用小程序查看答案

34、阅读以下程序 int case;float printF; scanf("%d%f",&case,&printF); printf("%d %f\n",case,printF); 该程序编译时产生错误,其出错原因是______。

A.定义语句出错,case是关键字,不能用作用户自定义标识符
B.定义语句出错 ,printF不能用作用户自定义标识符
C.定义语句无错,scanf不能作为输入函数使用
D.定义语句无错,printf不能输出case的值

参考答案:请扫码使用小程序查看答案

35、语句printf("ch=%d,ch=%c\n",65,65); 的输出结果是_______

A.65,65
B.ch=65,ch=65
C.ch=65,ch=A
D.ch=A,ch=A

参考答案:请扫码使用小程序查看答案

36、以下正确的说法是:

A.定义函数时,形参的类型说明可以放在函数体内
B.return 后边的值不能为表达式
C.如果函数值的类型与返回值类型不一致,以函数值类型为准
D.如果形参与实参类型不一致,以实参类型为准

参考答案:请扫码使用小程序查看答案

37、以下描述不正确的是_____。

A.使用while和do-while循环时,循环变量初始化的操作应在循环体语句之前完成
B.while循环是先判断表达式,后执行循环语句
C.do-while 和for循环均是先执行循环语句,后判断表达式
D.for、while 和do-while循环中的循环体均可以由空语句构成

参考答案:请扫码使用小程序查看答案

38、下列程序的输出结果是_____。 void main() { int i,j,m=0,n=0; for(i=0; i<2; i++) for(j=0; j<2; j++) if(j>=i) m=1; n++; printf("%d \n",n); }

A.4
B.2
C.1
D.0

参考答案:请扫码使用小程序查看答案

39、C 语言程序能够在不同的操作系统运行,这说明C语言具有很好的______

A.适应性
B.移植性
C.兼容性
D.操作性

参考答案:请扫码使用小程序查看答案

40、若p,q是同类型的指针变量,则p、q之间可以进行的算术运算是_____。

A.+
B.-
C.*
D./

参考答案:请扫码使用小程序查看答案

41、对if语句中表达式的类型,下列正确的描述是_____。

A.必须是关系表达式
B.必须是关系表达式或逻辑表达式
C.必须是关系表达式或算法表达式
D.可以是任意表达式

参考答案:请扫码使用小程序查看答案

42、设有:int a = 1, b = 2, c = 3, d = 4, m = 2, n = 2; 执行(m = a>b) && (n = c>d)后n的值是_____。

A.1
B.2
C.3
D.4

参考答案:请扫码使用小程序查看答案

43、C语言具有哪些特点?

A.可移植性好
B.运算符与数据类型丰富
C.属于强类型语言
D.语法检查严格
E.简洁灵活
F.结构化

参考答案:请扫码使用小程序查看答案

44、C语言的主要应用有哪些?

A.开发系统软件
B.开发大型应用软件
C.编写个人网页
D.编写硬件设备的驱动程序
E.开发游戏软件
F.编写通信程序
G.编写广告文案

参考答案:请扫码使用小程序查看答案

45、以下用户标识符,其中合法的是()。

A.abc
B.f2_A1
C.a8bc
D.A-12
E.A_12

参考答案:请扫码使用小程序查看答案

46、为什么要学习C语言?它具有哪些特性?

A.功能强大
B.应用广泛
C.通用性好
D.晦涩难懂
E.富有挑战性

参考答案:请扫码使用小程序查看答案