第一单元 程序设计与C语言

随堂测验1.1

1、单选题:
‌计算机能直接执行的程序是用何种程序设计语言编写的?‍
选项:
A: C语言
B: 机器语言
C: 汇编语言
D: C++
答案: 【 机器语言

2、判断题:
‏C语言源程序是用编译方式进行翻译的。‍
选项:
A: 正确
B: 错误
答案: 【 正确

随堂测验1.2

1、单选题:
‍下列哪种程序设计语言能编写系统软件?‎
选项:
A: Fortran
B: VB
C: C
D: JAVA
答案: 【 C

随堂测验1.3

1、单选题:
‏C程序中main函数的位置是:​
选项:
A: 必须在程序的开始。
B: 必须在程序的最后。
C: 可以任意位置。
D: 必须在程序的中间位置。
答案: 【 可以任意位置。

2、单选题:
‎C程序的执行总是从:‏
选项:
A: 第1个函数开始执行。
B: main函数开始执行。
C: 最后1个函数开始执行。
D: 中间函数开始执行。
答案: 【 main函数开始执行。

3、判断题:
​1个C程序可以由1个或多个函数构成,但必须有1个函数名为main。‎
选项:
A: 正确
B: 错误
答案: 【 正确

4、判断题:
​语句的结束标志是冒号“:”‍
选项:
A: 正确
B: 错误
答案: 【 错误

5、判断题:
‎C程序中1条语句必须写在一行。​
选项:
A: 正确
B: 错误
答案: 【 错误

随堂测验1.4

1、单选题:
‍C语言源程序的扩展名是:‌
选项:
A: .obj
B: .exe
C: .doc
D: .c
答案: 【 .c

2、单选题:
‌C语言程序上机调试步骤是:​
选项:
A: 编写源程序、编译、连接、运行。
B: 编写源程序、编译、运行。
C: 编写源程序、连接、运行。
D: 编写源程序、运行。
答案: 【 编写源程序、编译、连接、运行。

第二单元 程序的数据描述——基本数据类型

随堂测验2.1

1、单选题:
‌正确的用户标识符是:‏
选项:
A: 6a
B: _int
C: a-b
D: char
答案: 【 _int

2、单选题:
‌不正确的用户标识符是:‍
选项:
A: stu_no
B: Int
C: a1.
D: _char
答案: 【 a1.

3、单选题:
​不正确的数据类型关键字是:‍
选项:
A: float
B: char
C: double
D: integer
答案: 【 integer

4、多选题:
‏用户标识符开头必须是:‌
选项:
A: 数字
B: 字母
C: 任意字符
D: 下划线
答案: 【 字母;
下划线

随堂测验2.2

1、单选题:
‎C语言基本数据类型包括:‏
选项:
A: 整型、实型、逻辑型
B: 整型、实型、字符型
C: 整型、字符型、逻辑型
D: 整型、实型、字符串型
答案: 【 整型、实型、字符型

随堂测验2.3

1、单选题:
‍下列不能正确定义变量并给变量赋值的是:​
选项:
A: int a,b;a=b=6;
B: int a=5,b=5;
C: int a=5,b;b=5;
D: int a=b=5;
答案: 【 int a=b=5;

2、判断题:
​C语言中常量是没有类型之分的。‏
选项:
A: 正确
B: 错误
答案: 【 错误

3、判断题:
‏在程序运行期间,变量可以多次被赋值。‍
选项:
A: 正确
B: 错误
答案: 【 正确

4、判断题:
‍C程序中变量可以不定义而直接使用。‎
选项:
A: 正确
B: 错误
答案: 【 错误

5、填空题:
‍在程序运行过程中其值不能被改变的量称为:‌
答案: 【 常量

随堂测验2.4

1、单选题:
‎C语言中整型数据在内存中的存放形式是:‏
选项:
A: 原码     
B: 反码
C: 补码
D: ASCII码
答案: 【 补码

2、单选题:
‌整型数据类型关键字是:.​
选项:
A: double
B: unsigned
C: char
D: int
答案: 【 int

3、单选题:
‌不合法的整型常量是:‏
选项:
A: 12345
B: 068
C: 0xabc
D: 0147
答案: 【 068

4、填空题:
​1个有符号短整型数的最大正数是:‎
答案: 【 32767

5、填空题:
‌1个无符号短整型数的最大正数是:‍
答案: 【 65535

随堂测验2.5

1、单选题:
‍不正确的实型常量是:‍
选项:
A: 0.5
B: .5
C: 5.0
D: 5
答案: 【 5

2、单选题:
‎下列C语言合法的实型数据类型关键字是:‎
选项:
A: int
B: float
C: char
D: Double
答案: 【 float

3、单选题:
​下面四个选项中,均是不合法的浮点数的选项是:‎
选项:
A:   160.  0.12     e3
B:  123  2e4.2 .e5
C: -.1823e4 0.
D:  -e3 .234 1e3
答案: 【  123  2e4.2 .e5

4、单选题:
‎下面四个选项中,均是合法浮点数的选项是:‍
选项:
A: +1e+1   5e一9 03e2   
B: -.60   12e-4  -e5
C: 123e     1.2e-.4   +2e-1
D: -e3.8e4 5.e-0
答案: 【 +1e+1   5e一9 03e2   

5、多选题:
‌合法的实型常量是:‎
选项:
A: .2e5
B: 2.5e4.5
C: 4e-2
D: e3
答案: 【 .2e5;
4e-2

随堂测验2.6

1、单选题:
​字符数据类型关键字是:‎
选项:
A: string
B: c
C: char
D: CHAR
答案: 【 char

2、单选题:
‏下面4个选项中,均是合法的转义字符选项是:​‏​
选项:
A: "'"  '\'  'n'
B: '\' '17'  '"' 
C: '18''f'      'xab' 
D: '\0' '101' 'xlf'
答案: 【 '\' '17'  '"' 

3、单选题:
下面正确的字符常量是:​
选项:
A: "a"
B: '\''
C: 'W'
D: ''
答案: 【 'W'

4、单选题:
​下面不正确的字符串常量是:​
选项:
A: 'abc'
B: "127812"
C: "0"
D: ""
答案: 【 'abc'

5、单选题:
‎字符串“ab108g”在内存中占的字节数是:‏
选项:
A: 8
B: 7
C: 6
D: 5
答案: 【 6

6、填空题:
​字符型数据在内容中占的字节数是:‎
答案: 【 1

7、填空题:
‎'a'在内存中占的字节数是:​
答案: 【 1

8、填空题:
‍"a"在内存中占的字节数是:‌
答案: 【 2

第三单元 程序的数据运算

3.1知识点检测

1、单选题:
​在C语言中,要求运算符两侧的运算对象必须是整型数据的运算符( )。​
选项:
A: /
B: ++
C: !=
D: %
答案: 【 %

2、单选题:
‏下列运算符优先级最高的是(  )。‍
选项:
A: 关系运算符
B: 赋值运算符
C: 算术运算符
D: 逻辑运算符
答案: 【 算术运算符

3、多选题:
‏根据运算对象个数,运算符可以分为(  )。‍
选项:
A: 单目运算符
B: 双目运算符
C: 三目运算符
D: 四目运算符
答案: 【 单目运算符;
双目运算符;
三目运算符

4、判断题:
‍赋值运算符的结合性为左结合。()‌
选项:
A: 正确
B: 错误
答案: 【 错误

5、判断题:
‎单目运算符、赋值运算符和条件运算符均为右结合性。( )​
选项:
A: 正确
B: 错误
答案: 【 正确

3.2知识点测试

1、单选题:

若有代数式,则不正确的C语言表达式是( )

​选项:
A: a/b/c*e*3
B: 3*a*e/b/c 
C: 3*a*e/b*c
D: a*e/c/b*3
答案: 【 3*a*e/b*c

2、判断题:
‌在C语言中,如果算术运算符(/)的运算对象中有一个是实型,则结果为双精度实型。()‍
选项:
A: 正确
B: 错误
答案: 【 正确

3、填空题:
‍在C语言中, 用算术运算符%求两个数相除的余数,要求两侧的运算对象必须为           数据。‏
答案: 【 整型

3.3知识点测试

1、单选题:
‎下列选项中符合C语言语法的赋值表达式是( )。​
选项:
A: a=b+c=3
B: a=(b=5,c=b+6)
C: a=b=5,c=b+2
D: a-=4+b=c+2
答案: 【 a=(b=5,c=b+6)

2、单选题:
‎已知各变量的类型说明如下:int a=2, b=5; double y=8.5; 则以下符合C语言语法的表达式是( )。‏
选项:
A: a+=a-=(b=2)*(a=8)
B: a=b/3=8
C: y%3
D: y=float (a)
答案: 【 a+=a-=(b=2)*(a=8)

3、多选题:
‌已知ch是字符型变量,下面正确的赋值语句是‎
选项:
A: ch='34';
B: ch= '34';
C: ch='3'+'4';
D: ch=3+4;
答案: 【 ch='34';;
ch='3'+'4';;
ch=3+4;

4、填空题:
​已知“int x=6;”,则执行语句“x+=x-=x*x;”后x的值是       。‌
答案: 【 -60

5、填空题:
若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为      ,n的值为       。‍​‍
答案: 【 10;6

3.4知识点测试

1、单选题:
​当c的值不为0时,以下能将c的值赋给变量a, b 的是( )。‎
选项:
A: c=b=a
B: (a=c) || (b=c)
C: (a=c) && (b=c)
D: a=c=b
答案: 【 (a=c) && (b=c)

2、单选题:
‍若希望当x的值为奇数时,表达式的值为“真”,x的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是( )。‏
选项:
A: x%2==1
B: x%2
C:  !(x%2)
D: !(x%2==0)
答案: 【  !(x%2)

3、填空题:
‎C语言中用       表示逻辑“假”。‏
答案: 【 0

4、填空题:
为表示关系x≥y≥z,应使用C语言表达式      。‍‎
答案: 【 x>=y&&y>=z

5、填空题:
​若有定义“int a=2,b=3;float x=3.5,y=2.5;”则表达式“(float)(a+b)/2+(int)x%(int)y”的值为       。‌
答案: 【 3.5##%_YZPRLFH_%##3.500000

第五单元 选择结构程序设计

随堂测试 5.1关系运算符和关系表达式

1、单选题:
‏下列运算符中优先级最高的是:‍
选项:
A: =
B: +
C: ++
D: <
答案: 【 ++

2、单选题:
‍下列运算符中优先级最低的是:​
选项:
A: =
B: +
C: ++
D: >
答案: 【 =

3、单选题:
​下列运算符中结合方向与其他不同的是:‌
选项:
A: =
B: +
C: <=
D: >
答案: 【 =

随堂测试 5.4 switch语句

1、单选题:
‎在c语言中,叙述正确的是:‌
选项:
A: switch语句可以没有default分支
B: switch语句必须有default分支
C: switch语句每个分支必须执行
D: case与冒号之间可以是条件表达式
答案: 【 switch语句可以没有default分支

2、判断题:
‌case与冒号之间可以是浮点类型数据​
选项:
A: 正确
B: 错误
答案: 【 错误

3、判断题:
​switch语句每个分支必须执行‏
选项:
A: 正确
B: 错误
答案: 【 错误

随堂测试 5.5 条件运算符和条件表达式

1、单选题:
‎下列运算符中优先级最低的是:‍
选项:
A: == 
B: + 
C: ++ 
D: ? :
答案: 【 ? :

2、单选题:
‏下列运算符中结合方向与其他不同的是:‏
选项:
A: ? :
B: + 
C: && 
D:  ||
答案: 【 ? :

3、判断题:
​条件运算符符可以嵌套使用。‏
选项:
A: 正确
B: 错误
答案: 【 正确

随堂测试 5.6 选择结构程序举例

1、单选题:
‏以下代码输出结果是:​‏if(3>2>1)printf("ok");​‏else printf("no");​‏​
选项:
A: ok
B: no
C: 不确定
D: 代码错误,不能输出
答案: 【 no

2、单选题:
‍以下代码输出结果是:​‍int x=10,y=20,z=30;​‍if(x||(y=50)>z)printf("y=%d",y);​‍else printf("y=%d",y);​‍​
选项:
A: y=20
B: y=50
C: 不确定
D: 代码错误,不能输出
答案: 【 y=20

3、单选题:
​以下代码输出结果是:‎​char x='f';‎​if('A'<x<'Z')printf("ok");‎​else printf("no");‎​‎
选项:
A: ok
B: no
C: 不确定
D: 代码错误,不能输出
答案: 【 ok

随堂测试

1、单选题:
‌下列符合c语法的if语句是:‍
选项:
A: if 3>5 then printf("Ok!");
B: if 3>5 printf("Ok!")
C: if (3>5) then printf("Ok!");
D: if (3>5) printf("Ok!");
答案: 【 if (3>5) printf("Ok!");

2、单选题:
​在c语言中,叙述正确的是:‎
选项:
A: if语句可以不以 分号;结尾
B: if语句必须要有else
C: if后面小括号里可以加分号;
D: if语句不一定要有else
答案: 【 if语句不一定要有else

3、单选题:
‎下列符合c语法的if语句是:​
选项:
A: if (3>5;) printf("Ok!");
B: if (3>5) then printf("Ok!");
C: if (3>5) printf("Ok!")
D: if (3>5) printf("Ok!");
答案: 【 if (3>5) printf("Ok!");

随堂测试5.2

1、单选题:
‏下列运算符中优先级最高的是:​
选项:
A: =
B: +
C: *
D: &&
答案: 【 *

2、单选题:
‎下列运算符中优先级最低的是:‌
选项:
A: ==
B: +
C: ++
D: ||
答案: 【 ||

3、单选题:
​下列运算符中结合方向与其他不同的是:‏
选项:
A: !
B: &&
C: ||
D: +
答案: 【 !

第六单元 循环结构程序设计

中国大学MOOC第2次单元测验(选择结构和循环结构)

1、单选题:
​下列程序的输出结果是__ 。‏​int main()‏​{‏​    int t=98765,x;‏​    while(t!=0)‏​    {‏​       x=t%10;‏​       printf("%d",x);‏​       t/=10;‏​     }‏​     return 0;‏​}‏
选项:
A: 98765
B: 56789
C: 57689
D: 程序不停机
答案: 【 56789

2、单选题:
‌下列程序的输出结果是__ 。‎‌int main()‎‌{‎‌    int t=98765,x;‎‌    do‎‌    {‎‌        x=t%10;‎‌        printf("%d",x);‎‌        t/=10;‎‌     }while(t!=0);‎‌     return 0;‎‌}‎
选项:
A: 98765
B: 56789
C: 57689
D: 程序不停机
答案: 【 56789

3、单选题:
‍以下哪个循环和其他三条循环不等价(假设循环体都是一样的)?‌
选项:
A: for(i=0;i<10;i++ ) {...}
B: for(i=0;i<10;++i ) {...}
C: for(i=0;i++<10;  ) {...}
D: for(i=0;i<=9;i++ ) {...}
答案: 【 for(i=0;i++<10;  ) {...}

4、单选题:
‌下列程序段的输出结果是__‎‌int k=12;‎‌for(;k>8;k--);‎‌if(k%2==0) printf("%d",k);‎
选项:
A: 1210
B: 12
C: 8
D: 无限循环
答案: 【 8

5、单选题:
‎以下代码段的输出是__‏‎int i,b,k=0;‏‎for(i=1;i<=5;i++ )‏‎{‏‎  b=i%2;‏‎  while(b-->=0) k++;‏‎}‏‎printf("%d,%d", k,b);‏
选项:
A: 3,-1
B: 8,-1
C: 3,0
D: 8,-2
答案: 【 8,-2

6、单选题:
​下列程序段的输出结果是__‍​int a,b,m;‍​for(a=5;a>=1;a--)‍​{ ‍​  m=0;‍​  for(b=a;b<=5;b++)‍​    m=m+a*b;‍​}‍​printf("%dn",m);‍
选项:
A: 30
B: 15
C: 20
D: 10 
答案: 【 15

7、单选题:
‎下面代码段的输出是__​‎int c=5,k;​‎for(k=1;k<3;k++)​‎  switch(k)​‎  {​‎    default:c+=k;​‎    case 2: c++;break;​‎    case 4: c+=2;break;​‎  }​‎printf("%dn",c);​
选项:
A: 10
B: 8
C: 6
D: 12
答案: 【 8

8、单选题:
‎关于双重循环的执行过程,以下说法正确的是__。‌
选项:
A: 外层循环的循环体执行一次,内层循环执行一遍。
B: 外层循环的循环体执行一次,内层循环执行一次。
C: 外层循环的循环体执行一遍,内层循环执行一次。
D: 外层循环的循环体执行一遍,内层循环执行一遍。
答案: 【 外层循环的循环体执行一次,内层循环执行一遍。

9、单选题:
‍9、计算1!+2!+3!+4!+5!编程如下,程序中下划线处应填写__。‌‍#include <stdio.h>‌‍void main( )‌‍{‌‍int i;‌‍int t=__,s=__;‌‍for(i=1;i<6;i++)‌‍{‌‍  t=t*i;‌‍  s=s+t;‌‍}‌‍printf("1!+2!+3!+4!+5!=%dn",s);‌‍}‌
选项:
A: 0 0
B: 1 0
C: 0 1
D: 1 1
答案: 【 1 0

10、单选题:
​下面代码段的输出是__​​int k,m;​​for(k=0;k<10;k++ )​​{​​  m=k*k;​​  if(m>50) break;​​}​​printf("%d,%dn",k,m);​
选项:
A: 8,64
B: 9,81
C: 10,64
D: 10,81
答案: 【 8,64

11、单选题:
​下面代码段的输出是__‍​int k,m;‍​for(k=0;k<10;k++ )‍​{‍​  if(m>50) continue;‍​  m=k*k;‍​}‍​printf("%d,%dn",k,m);‍
选项:
A: 8,64
B: 9,81
C: 10,64
D: 10,81
答案: 【 10,64

12、单选题:
​假设有定义:‍​int k;‍​下面程序段编译运行的情况是___。‍​for (k=1; k; k++)  ‍​    printf ("%d ", k);‍
选项:
A: 能运行, 是死循环
B: 能运行, 正常结束
C: 编译错误
D: 以上说法都不对
答案: 【 能运行, 是死循环

13、单选题:
‏for(表达式1;;表达式3)可理解为____。‌
选项:
A: for(表达式1;0;表达式3)
B: for(表达式1; 表达式1;表达式3)
C: for(表达式1; 表达式3;表达式3)
D: for(表达式1;1;表达式3)
答案: 【 for(表达式1;1;表达式3)

14、单选题:
‌以下哪个for语句是错误的__‌
选项:
A: for(i=0;j<10;j++);
B: for(i=0;j=0;i<10;i++);
C: for(i=0;i<10;i--);
D: for(;;);
答案: 【 for(i=0;j=0;i<10;i++);

15、单选题:
‌while(x%3) a++;中的表达式x%3等价于____‎
选项:
A: x%3!=0
B: x%3==1
C: x%3==2
D: x%3==0
答案: 【 x%3!=0

16、单选题:
‍while (!x&&!y)中的循环条件表达式等价于__‍
选项:
A: !(x!=0||y!=0)
B: x=0 && y=0
C: !(x==0 && y==0)
D: !(x==0 || y==0)
答案: 【 x=0 && y=0

17、单选题:
‌在代码:while(!e)中,!e等价于__‎
选项:
A: e != 1
B: e == 1
C: e!=0
D: e == 0
答案: 【 e == 0

18、单选题:
​对于以下代码:‍​int i;‍​for(i=0;i<10;i++)‍​    printf("%d",i);‍​for循环结束后,i的值是__‍
选项:
A: i不再存在了
B: 11
C: 10
D: 9
答案: 【 10

19、单选题:
​以下代码片段的输出是__‏​int i,j=4;‏​for(i=j; i<=2*j; i++ )‏​{‏​    switch ( i/j )‏​   {‏​      case 0:‏​      case 1: printf("*"); break;‏​      case 2: printf("#");‏​    }‏​}‏
选项:
A: ****#
B: ***#
C: *#
D: ****##
答案: 【 ****#

20、单选题:
‌对于以下代码:‌‌int i=6;‌‌do{‌‌  printf("%d", i--);‌‌}while(0);‌‌正确的是__‌
选项:
A: 打印不出东西
B: 打印出5
C: 因为while(0),无法编译
D: 打印出6
答案: 【 打印出6

21、单选题:
​对于以下代码:‍​int i=6;‍​do{‍​  printf("%d", i--);‍​}while(i--);‍​正确的是__‍
选项:
A: 输出642
B: 输出6420
C: 输出6420-2
D: 输出6420-2-4...,程序无法停机
答案: 【 输出6420-2-4...,程序无法停机

22、单选题:
‍对于以下代码:‍‍int i=6;‍‍do{‍‍  printf("%d", i--);‍‍}while(i);‍‍最后一个输出的值是__‍
选项:
A: 0
B: 1
C: 2
D: 3
答案: 【 1

23、单选题:
‍以下代码片段的输出是__‎‍int i,j=4;‎‍for(i=j; i<=2*j; i++ )‎‍{‎‍    switch ( i%j )‎‍   {‎‍      case 0:‎‍      case 1: printf("*"); break;‎‍      case 2: printf("#");‎‍    }‎‍}‎
选项:
A: ****#
B: ***#
C: **#*
D: ****##
答案: 【 **#*

24、单选题:
‌在代码:while(e)中,e等价于__‎
选项:
A: e != 1
B: e == 1
C: e!=0
D: e == 0
答案: 【 e!=0

25、单选题:
‎在代码:while(e==0)中,e等价于__​
选项:
A: e != 1
B: e == 1
C: e!=0
D: !e 
答案: 【 !e 

26、单选题:
‏在代码:while(e||0)中,e等价于__‎
选项:
A: e != 1
B: e == 1
C: e!=0
D: e == 0
答案: 【 e!=0

27、单选题:
‍在代码:while(e&&1)中,e等价于__‌
选项:
A: e != 1
B: e == 1
C: e!=0
D: e == 0
答案: 【 e!=0

28、单选题:
‍在代码:while(e||1)中,e等价于__‌
选项:
A: e取任何值
B: e == 1
C: e!=0
D: e == 0
答案: 【 e取任何值

29、单选题:
‍若int k;while(k%4)中,使循环条件不成立的是__‌
选项:
A: k=0
B: k=1
C: k=2
D: k=3
答案: 【 k=0

30、单选题:
‍设有程序段int  k=5;​‍  while(k=0)  k=k-1;则下面描述中正确的是__​
选项:
A: while循环执行5次 
B: 循环是无限循环  
C: 循环体语句一次也不执行
D: 循环体语句执行一次
答案: 【 循环体语句一次也不执行

31、单选题:
‏设有程序段int  k=5;‏‏  do  k=k-1; while(k=0);则下面描述中正确的是___‏
选项:
A: while循环执行5次 
B: 循环是无限循环
C: 循环体语句一次也不执行
D: 循环体语句执行一次
答案: 【 循环体语句执行一次

32、单选题:
‍有以下程序段‌‍int  x=0,s=0;‌‍while(!x!=0)  s+=++x;‌‍printf("%d",s);则‌
选项:
A: 运行程序段后输出0 
B: 运行程序段后输出1
C: 程序段中的控制表达式是非法的
D: 程序段执行无限次
答案: 【 运行程序段后输出1

33、单选题:
‍下面程序段的运行结果是​‍int a,b,c;​‍a=1;b= 2;c=2;  ​‍while(--b,c--,a--) ​‍printf("%d,%d,%d",a,b,c);​
选项:
A: 1,2,0
B: 2,1,0
C: 1,2,1
D: 0,1,1
答案: 【 0,1,1

34、单选题:
‍下面程序段的运行结果是:  ‎‍x=y=0;  ‎‍while(x<15)  y++,x+=++y;  ‎‍printf("%d,%d",y,x);  ‎
选项:
A: 20,7
B: 6,12
C: 20,8
D: 8,20
答案: 【 8,20

35、单选题:
‍下面程序段的运行结果是‏‍int n=0;  ‏‍while(n++<=2);printf("%d",n);‏
选项:
A: 2
B: 3
C: 4
D: 有语法错  
答案: 【 4

36、单选题:
‌下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一对相等数时结束循‏‌环,请选择填空:‏‌int  a,b,t;  ‏‌scanf("%d%d",&a,&b);‏‌while( ___  )  ‏‌{‏‌   if(a>b)  ‏‌ {t=a;a=b;b=t;}    ‏‌   printf("%d,%d",a,b);  ‏‌   scanf("%d%d",&a,&b);‏‌}‏
选项:
A: !a=b
B: a!=b
C: a==b
D: a=b
答案: 【 a!=b

37、单选题:
‏下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,‌‏并输出m、n中的较大者,请选择填空: ‌‏int  m=0,n=0; ‌‏char c;  ‌‏while((__)!='n')       ‌‏{ ‌‏   if(c>='A'&& c<='Z') m++ ;        ‌‏   if(c>='a'&& c<='z') n++; ‌‏}             ‌‏printf("%dn",m) ‌
选项:
A: scanf("%d",c)
B: getchar()
C: c=getchar()
D: scanf("%c",c)
答案: 【 c=getchar()

38、单选题:
​下面程序的功能是将小写字母变成对应大写字母后的第二个字母。其中y变成A,z 变成B.‍​请选择填空‍​char c;‍​while((c=getchar())!='n')‍​{‍​   if(c>= 'a'&&c<='z')    c-= 30;‍​   if(c>'z'&&c<='z'+ 2)   ___ ; ‍​   printf("%c",c);       ‍​} ‍
选项:
A: c='B'
B: c='A'
C: c-=26
D: c=c+26
答案: 【 c-=26

39、单选题:
‎以下描述中正确的是__‏
选项:
A: 由于do一while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
B: do一while循环由do开始,用while结束,在while(表达式)后面不能写分号 
C: 在do一while循环体中,一定要有能使while后表达式值变为零("假")的操作
D: do一while循环中,根据情况可以省略while
答案: 【 在do一while循环体中,一定要有能使while后表达式值变为零("假")的操作

40、单选题:
‍若有如下语句‏‍int  x=3;  ‏‍do ‏‍{ printf("%dn",x -=2);} ‏‍while(!(--x));‏‍则上面程序段__‏
选项:
A: 输出的是1
B: 输出的是1和-2
C: 输出的是3和0
D: 是死循环 
答案: 【 输出的是1和-2

41、单选题:
‍下面程序的功能是计算正整数2345的各位数字平方和,请选择填空。‎‍#include ‎‍main()‎‍{‎‍   int  n,sum=0;   ‎‍   n=2345;  ‎‍  do‎‍   { ‎‍     sum=sum+(n%10)*(n%10);     ‎‍     n=__; ‎‍   }while(n);    ‎‍printf("sum=%d",sum);}‎
选项:
A: n/1000
B: n/100
C: n/10
D: n%10
答案: 【 n/10

42、单选题:
‎下面程序是从键盘输入学号,然后输出学号中百位数字是3的学号,输入0时结束循环。请选择填空。  ‍‎main()    ‍‎{‍‎  1ong  int  num;‍‎  scanf("%ld",&num);‍‎  do‍‎  { ‍‎       if(__)   printf("%ld",num);       ‍‎       scanf("%ld",&num);  ‍‎  }while(!num==0);‍‎}‍
选项:
A: num%100/10==3
B: num/100%10==3
C: num%10/10==3
D: num/10%10==3
答案: 【 num/100%10==3

43、单选题:
‎下面程序的运行结果是__‍‎main()‍‎{‍‎   int  y=10;‍‎   do{y--;}while(--y);‍‎   printf("%dn",y--);  ‍‎‍‎}‍
选项:
A: -1
B: 1
C: 8
D: 0
答案: 【 0

44、单选题:
‍下面有关for循环的正确描述是__‏
选项:
A: for循环只能用于循环次数已经确定的情况
B: for循环是先执行循环体语句,后判断表达式
C: 在for循环中,不能用break语句跳出循环体
D: for循环的循环体语句中, 可以包含多条语句,但必须用花括号括起来
答案: 【 for循环的循环体语句中, 可以包含多条语句,但必须用花括号括起来

45、单选题:
​若i为整型变量,则以下循环执行次数是__  ​​for  (i=2;i==0;)  printf("%d",i-- );​
选项:
A: 无限次
B: 0次
C: 1次 
D: 2次
答案: 【 0次

46、单选题:
​以下不是无限循环的语句为: ‍
选项:
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;
答案: 【 for  (y=0,x=1;x > ++y;x =i++)  i=x ; 

47、单选题:
‌下面程序的功能是计算:至50中是7的倍数的数值之和,请选择填空.‎‌main()‎‌{‎‌  int  i,sum= 0;‎‌  for(i=1;i<=50;i++) ‎‌     if(__)  sum+=i;        ‎‌  printf("%d",sum);  ‎‌    ‎‌} ‎
选项:
A: (int)(i/7)==i/7
B: (int)i/7==i/7 
C: i%7= 0 
D: i%7==0
答案: 【 i%7==0

48、单选题:
‏下面程序的功能是计算 1至10之间的奇数之和及偶数之和。请选择填空;     ‎‏main()     ‎‏{‎‏   int  a,b,c,i;     ‎‏   a=c=0;    ‎‏   for(i=0;i<=10;i+=2)      ‎‏   { ‎‏      a+=i;‎‏      ___;       ‎‏      c+=b;    ‎‏   }     ‎‏  printf("偶数之和=%dn",a);      ‎‏  printf("奇数之和=%dn",c-11);‎‏} ‎
选项:
A: b=i--
B: =i+1
C: b=i++  
D: b=i-1
答案: 【 =i+1

49、单选题:
‎下面程序段:      ‏‎for(t=1;t<=100;t++)  ‏‎{‏‎   scanf("%d",&x);   ‏‎   if(x<0)  continue;       ‏‎   printf("%3d",t);‏‎} ‏
选项:
A: 当x<0时整个循环结束
B: x>=0时什么也不输出
C: printf函数永远也不执行 
D: 最多允许输出100个非负整数
答案: 【 最多允许输出100个非负整数

50、单选题:
‍下面程序段:    ‎‍x=3;   ‎‍do   ‎‍{‎‍   y=x--;    ‎‍   if(!y)‎‍   {   ‎‍       printf("x"); ‎‍       continue;‎‍   }  ‎‍   printf("#");  ‎‍}while (1<=x<=2); ‎
选项:
A: 将输出##
B: 将输出##*
C: 是死循环
D: 含有不合法的控制表达式
答案: 【 是死循环

51、单选题:
‍与下面程序段等价的是:  ​‍for(n=100;n<= 200; n++)    ​‍{  if (n%3==0)  continue;       ​‍   printf("%4d",n);}    ​
选项:
A: for(n=100;(n%3)&& n<=200;n++) printf("%4d",n);
B: for(n=100;(n%3)|| n<=200;n++) printf("%4d",n); 
C: for(n=100;n<=200;n++)if(n%3!=0)printf("%4d",n) 
D: for(n=100;n<=200;  n++)  {if(n%3)  printf("%4d",n);         else  continue;        break;}  
答案: 【 for(n=100;n<=200;n++)if(n%3!=0)printf("%4d",n) 

52、单选题:
​下面程序的运行结果是:​​main() ​​{​​  int i,j,a=0;  ​​  for (i=0;i<2;i++)  ​​ { ​​     for (j=0;j<=4;j++)  ​​     {​​        if(j%2)  break;  ​​        a++;​​     }       ​​   a++;​​  }​​  printf("%dn",a);​​} ​
选项:
A: 4
B: 5 
C: 6 
D: 7
答案: 【 4

53、单选题:
​下列运算符中优先级最高的是:‏
选项:
A: =
B: +
C: --
D: <
答案: 【 --

54、单选题:
​下列运算符中优先级最低的是:‏
选项:
A: +=
B: +
C: ++
D: >
答案: 【 +=

55、单选题:
‍下列运算符中结合方向与其他不同的是:​
选项:
A: +=
B: +
C: <=
D: >
答案: 【 +=

56、单选题:
‎下列运算符中优先级最高的是:‍
选项:
A: =
B: +
C: !
D: &&
答案: 【 !

57、单选题:
‎下列运算符中优先级最低的是:‌‎‌‎‌
选项:
A: ==
B: +
C: ++
D: +=
答案: 【 +=

58、单选题:
‍下列符合c语法的if语句是:‎
选项:
A: if 3>5 then printf("Ok!");
B: if 3>5 printf("Ok!")
C: if (3>5) then printf("Ok!");
D: if (3>5) printf("Ok!");
答案: 【 if (3>5) printf("Ok!");

59、单选题:
‎下列运算符中优先级最低的是:​
选项:
A: ==
B: +
C: ++
D: ? :
答案: 【 ? :

60、单选题:
​下列运算符中结合方向与其他不同的是:‍
选项:
A: ? :
B: +
C: &&
D: ||
答案: 【 ? :

61、单选题:
‏下列运算符中,结合方向是从右至左的是:‎
选项:
A: ? :
B: /
C: &&
D: >=
答案: 【 ? :

62、单选题:
‌以下代码输出结果是:​‌if(5>3>1)printf("ok");​‌else printf("no");​
选项:
A: ok
B: no
C: 不确定
D: 代码错误,不能输出
答案: 【 no

63、单选题:
‏以下代码输出结果是:‏‏int x=0,y=20,z=30;‏‏if(x||(y=50)>z)printf("y=%d",y);‏‏else printf("y=%d",y);‏
选项:
A: y=20
B: y=50
C: 不确定
D: 代码错误,不能输出
答案: 【 y=50

64、单选题:
‍以下代码输出结果是:‌‍char x='G';‌‍if('Z'>x>'A')printf("ok");‌‍else printf("no");‌‍‌
选项:
A: ok
B: no
C: 不确定
D: 代码错误,不能输出
答案: 【 no

65、单选题:
以下代码输出结果是:​int x=0,y=20,z=30​if(x||(y=50)>z)printf("y=%d",y);​else printf("y=%d",y);​‍​
选项:
A: y=20
B: y=50
C: 不确定
D: 代码错误,不能执行
答案: 【 代码错误,不能执行

66、多选题:
‌C语言中循环语句有__。‍
选项:
A: while语句
B: do-while语句
C: for语句
D: loop语句
答案: 【 while语句;
do-while语句;
for语句

67、多选题:
​for(表达式1;表达式2;表达式3)中的3个表达式可被省略的是__。​
选项:
A: 其中1个
B: 其中2个
C: 3个都可以
D: 表达式1和表达式3,表达式2不能省略
答案: 【 其中1个;
其中2个;
3个都可以

68、多选题:
‌循环条件表达式可以是__。​
选项:
A: 关系表达式
B: 逻辑表达式
C: 赋值表达式
D: 逗号表达式
答案: 【 关系表达式;
逻辑表达式;
赋值表达式;
逗号表达式

69、多选题:
‍若int x=2;以下__表达式作为循环条件表达式时表示条件为真。‎
选项:
A: x+2
B: x-2
C: x/2
D: x%2
答案: 【 x+2;
x/2

70、多选题:
‍若int x=2;以下__表达式作为循环条件表达式时表示条件为假。‌
选项:
A: x+2
B: x-2
C: x/2
D: x%2
答案: 【 x-2;
x%2

71、多选题:
‏以下说法正确的是__。​
选项:
A: while循环可与do-while循环可相互改写
B: while循环不能改写为for循环
C: while、do-while和for可相互改写
D: 以上说法都不对
答案: 【 while循环可与do-while循环可相互改写;
while、do-while和for可相互改写

72、多选题:
​循环体语句可以是__。​
选项:
A: 关系表达式语句
B: 空语句
C: 赋值表达式语句
D: 逗号表达式语句
答案: 【 关系表达式语句;
空语句;
赋值表达式语句;
逗号表达式语句

73、多选题:
‎以下说法正确的是__。‏
选项:
A: while语句与do-while语句执行的过程相同。
B: do-while语句的循环体,可能一次也不被执行。
C: while语句的循环体,可能一次也不被执行。
D: do-while语句的循环体,至少执行一次。
答案: 【 while语句的循环体,可能一次也不被执行。;
do-while语句的循环体,至少执行一次。

74、多选题:
‏若int i;while(i%3)中,使循环条件成立的是__‌
选项:
A: i=0
B: i=1
C: i=2
D: i=3
答案: 【 i=1;
i=2

75、多选题:
‏在c语言中,叙述正确的是:‏
选项:
A: if后面小括号里可以是任意类型的表达式
B: if语句必须要有else
C: if后面小括号里可以加分号;

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注