第2讲 C语言概貌

习题1 C语言概述

1、单选题:
‏给定:int a,b;以下哪个scanf的使用是错误的?‌
选项:
A:  scanf("%d",&a);scanf("%d",&b);
B: scanf("%d %d",&a,&b);
C: scanf("%d,%d",&a,&b);
D:  scanf("%d %d",a,b);
答案: 【  scanf("%d %d",a,b);

2、单选题:
‌给定:int a,b,c; scanf("%d,%d,%d",&a,&b,&c);则以下哪个输入方式是正确的?‍
选项:
A: 2030,40
B:  20,30,40
C: 20 30 40
D: 20,30 40
答案: 【  20,30,40

3、单选题:
​下列四个选项中,均是C语言关键字的选项是?‍
选项:
A: auto  enum  include
B: switch  typedef  continue
C: signed  union  scanf
D:  if  struct  type
答案: 【 switch  typedef  continue

4、单选题:
‌下列正确的标识符是?‍
选项:
A: _do
B: 6a
C:  %y
D: a+b
答案: 【 _do

5、单选题:
‍给定:char c1=97,c2=98;printf("%d %c",c1,c2),输出结果是?(字符'a'的ASCII码为97)​
选项:
A: 97 98
B: 97 b
C: a 98
D: a b
答案: 【 97 b

第3讲 基本数据类型和运算符

习题2 基本数据类型和运算符

1、单选题:
‏下列(   )是C语言中的合法常量。‍
选项:
A: 08
B: '45'
C: e1
D:  1.0e0.5
答案: 【 '45'

2、单选题:
‍设有float a=4,则a+=a/=a*a的值是(   )。‌
选项:
A: 1.5
B: 0.5
C: 2.5
D: 3.5
答案: 【 0.5

3、单选题:
‏若有定义#define T 8和int a,b;,下面正确的表达式是(   )。​
选项:
A: ++b--
B: a+2++
C: T++
D: 21+'a'
答案: 【 21+'a'

4、单选题:
‎int a=5,b=10,c;​‎c=1.0/b*a;​‎执行后变量c中的值是(      )。​
选项:
A: 0
B: 0.5
C: 1
D: 2
答案: 【 0

5、单选题:
‏如果变量 x、y 已经正确定义,下列哪个选项的语句不能正确将x、y的值进行交换?‌
选项:
A: x=t, t=y, y=x;
B: x=x+y, y=x-y, x=x-y;
C: t=x, x=y; y=t;
D: t=y, y=x, x=t;
答案: 【 x=t, t=y, y=x;

6、单选题:
‍若变量已正确定义并赋值,符合C语言语法的表达式是(    )。‌
选项:
A: a = 3 , 5
B: a = 2 ++
C: a = a + 1 = 3
D: 12.3 % 4
答案: 【 a = 3 , 5

7、判断题:
‎a=(b=4)+(c=6) 是一个合法的赋值表达式。​
选项:
A: 正确
B: 错误
答案: 【 正确

8、判断题:
‍C 语言规定 : 定义符号常量时必须用大写字母。​
选项:
A: 正确
B: 错误
答案: 【 错误

9、填空题:
​设有int x, a;,则执行a=(x=1, x++, x+2)后,a的值为(  )。​
答案: 【 4

10、填空题:
‏设a和n都已定义为整型变量,a=12, n=5,写出表达式 a+=a 运算后a的值(   )‏
答案: 【 24

11、填空题:
‎设a和n都已定义为整型变量,a=12, n=5,写出表达式 a/=a+a 运算后a的值(  )‍
答案: 【 0

12、填空题:
‍设a和n都已定义为整型变量,a=12, n=5,写出表达式 a+=a-=a*=a 运算后a的值(  )‎
答案: 【 0

13、填空题:
‍设x=2.5, a=7, y=4.7,算术表达式x+a%3*(int)(x+y)%2/4的值为(   )‎
答案: 【 2.5##%_YZPRLFH_%##2.500000

14、填空题:
‍设a=2, b=3, x=3.5, y=2.5,算术表达式(float)(a+b)/2+(int)x%(int)y的值为(   )‏
答案: 【 3.5##%_YZPRLFH_%##3.500000

第4讲 基本控制结构与控制运算符

习题3 基本控制结构与控制运算符

1、单选题:
​对条件表达式(M)?(a++):(a--)来说,其中表达式M等价于______。‎
选项:
A: M==0
B: M==1
C: M!=0‍
D: M!=1‍
答案: 【 M!=0‍

2、单选题:
‌以下运算符中优先级最高的运算符是______。‏
选项:
A: &&
B: ||
C: !=
D: !
答案: 【 !

3、单选题:
‎能正确地用逻辑关系表示: ”10<a<15”的C语言表达式是______。​
选项:
A: 10<a<15
B: 10<a && a<15
C: 10<a||a< 15
D: 10<=a && a<=15
答案: 【 10<a && a<15

4、单选题:
‎能正确表示逻辑关系: ”a≥10或a≤0”的C语言表达式是______。‏
选项:
A: a>=10 or a<=0
B: a>=10||a<=0
C: a>=10 & a<=0
D: a>=10 && a<=0
答案: 【 a>=10||a<=0

5、单选题:
‏对于 int x=10, y=100; 以下逻辑表达式的值为0的是(     )。‍
选项:
A: ( x > 100 | | y < 10 ) && y == 100
B: ( x > 0 && y > 0 ) | | x < 100
C: ( x > 10 | | y > 10 ) && x == 10
D: x > 100 | | y < 10 | | y > 10
答案: 【 ( x > 100 | | y < 10 ) && y == 100

6、单选题:
‎设i、j、k是 int 型变量,且i = 3, j = 4, k = 5,则以下值为0的表达式是(     )。‏
选项:
A: ! ( ( i < j ) && ! k || 1 )
B: 'i' && 'j'
C: i <= j
D: i || j + k && j - k
答案: 【 ! ( ( i < j ) && ! k || 1 )

7、单选题:
‍能正确表示a和b同时为正或同时为负的逻辑表达式是( )。‎
选项:
A: a*b>0
B: (a>0||b>0)&&(a<0||b<0)
C: (a>0&&b>0)&&(a<0&&b<0)
D: (a+b>0)&&(a+b<0)
答案: 【 a*b>0

8、填空题:
​表达式:a=1 || a>b+5 || a<1 的值是______ 。‍
答案: 【 1

9、填空题:
‌有定义:int a = 3, b = 4, c = 5 ;‎‌则表达式 a || b + c && b - c 的值为________。‎
答案: 【 1

10、填空题:
‌执行以下程序段后的b的值是(      )。‏‌int a=5,b=6,c=1,x=2,y=3,z=4;
c=(a=c>x)&&(b=y>z);‏
答案: 【 6

第5讲 程序中的选择结构

习题4 程序中的选择结构

1、单选题:
‌int a=1,b=2,c=3;
if(a>c)b=a;a=c;c=b;则c的值为_______。‌
选项:
A: 1
B: 2
C: 3
D: 不一定
答案: 【 2

2、单选题:
‏int a=3,b=2,c=1;
if(a>b>c) a=b;
else a=c;则a的值为_______。‌
选项:
A: 3
B: 2
C: 1
D: 0
答案: 【 1

3、单选题:
‌假定所有变量均已正确定义,下列程序段运行后x的值是_______。k1=1;
k2=2;
k3=3;
x=15;
if(!k1) x--;
else if(k2) x=4;
else x=3;​
选项:
A: 14
B: 4
C: 15
D: 3
答案: 【 4

4、单选题:
‍以下程序段运行后的输出结果是(      )。‍‍int x=1,y=0;
if(!x) y++;
else if(x==0)
if (x) y+=2;
else y+=3;
printf("%dn",y);‍
选项:
A: 0
B: 3
C: 2
D: 1
答案: 【 0

5、单选题:
‏以下程序段运行后的输出结果是(     )。​‏int a=0,b=0,c=0,d=0;
if(a=1) b=1; c=2;
else d=3;
printf("%d,%d,%d,%d",a,b,c,d);​
选项:
A: 有编译错误
B: 1,1,2,0
C: 0,0,0,3
D: 0,1,2,0
答案: 【 有编译错误

6、单选题:
‌ float a,b; 
 scanf("%f",&a);
 if(a<0.0) b=0.0;
 else if((a<0.5)&&(a!=2.0)) b=1.0/(a+2.0);
 else if(a<10.0) b=1.0/a;
 else b=10.0;
 printf("%fn",b);‎‌若以上程序段运行时输入为2.0(回车), 则上面程序的输出结果是         。‎
选项:
A: 0.500000
B: 0.5
C: 0
D: 0.0
答案: 【 0.500000

7、单选题:
‎执行以下代码段后,输出结果是         。‏‎float x=2,y;
if(x<0) y=0;
else if(x<10) y=1.0/10;
else y=1;
printf("%.1fn",y);‏‎‏
选项:
A: 0.1
B: 0.100000
C: 0.0
D: 1.0
答案: 【 0.1

8、单选题:
‌当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是          。‎‌if(a<b) 
if(c<d) x=1; 
else if(a<c) 
if(b<d) x=2; 
else x=3; 
else x=6; 
else x=7;‎
选项:
A: 1
B: 2
C: 3
D: 6
E: 7
答案: 【 2

9、单选题:
‏下列叙述中正确的是(      )。‍
选项:
A: 在switch语句中,不一定使用break语句。
B: 在switch语句中必须使用default。
C: break语句必须与switch语句中的case配对使用。
D: break 语句只能用于switch语句。
答案: 【 在switch语句中,不一定使用break语句。

10、单选题:
‏若有定义:‌‏float x=1.5;
int a=1,b=3,c=2;‌‏则正确的switch语句是(           )。‌
选项:

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

发表评论

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