[开心IT面试题] C语言基础二



1 下面四个选项中,均是非法常量的选项是(      )。

A)'as'        B)'\\'         C)-0x18       D)0xabc 

   -0fff       '\01'          01177         '\0'

  '\0a'        12,456         0xf           "a"

 

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

A)-0f1        B)-0xcdf       C)-018        D)-0x48eg

  -0xffff       017           999          -068

  0011         12,456         5e2          03f

 

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

A) "c"        B) '\\''       C) 'W'        D) '

 

4 以下每个选项都代表一个常量,其中正确的整型常量是(    )。

A)1.2         B)-20         C)1,000        D)4  5  6

 

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

A)_123        B)Printf       C)A$          D)Dim

 

6 在下列C语言程序中,可以用做变量名的是(   )。

A)1           B)a1          C)int          D)*p

 

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

A) float      B) Sagned      C) Integer      D) Char

 

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

A)_256       B)void         C)scanf         D)Struct

 

9 若k为int型变量,则以下语句(  )。k=8567;printf("|%-06d|\n",k);

A)输出格式描述不合法         B)输出为|008567|

C)输出为|8567|              D)输出为|-08567|

 

10 sizeof(float)是(  )。

A)一个双精度表达式           B)一个整型表达式

C)一种函数调用              D)一个不合法的表达式

 

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

A)由用户自己定义            B)均为2个字节

C)是任意的                 D)由所用机器的机器字长决定

 

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

A) 'a'<=c1<='z'             B) (c1>=A. &&(c1<='z')

C) ('a'>=c1)||('z'<=c1)      D) (c1>='a')&&(c1<='z')


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

A.a是实型变量,C语言允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值

B.在赋值表达式中,赋值号右边即可以是变量也可以是任意表达式

C.执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0

D.已有a=3,b=5当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3

 

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

A)int        B)float     C)double     D)不确定

 

15 下列运算符中,不属于关系运算符的是(   )。

A) <        B) > =      C) !         D) ! =

 

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

A) A%2= =1   B) !(A%2= =0)     C) !(A%2)      D) A%2

 

17 已知各变量的类型说明如下:

int i=8,k,a,b;

unsigned long w=5;

double x=1.42,y=5.2;

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

A)a+=a-=(b=4)*(a=3)

B)a=a*3=2

C)x%(-3)

D)y=float(i)

 

18 若变量已正确定义并赋值,下面符合C语言语法的表达式是(  )。

A)a=a+7;     B)a=7+b+c,a++    C)int 12.3%4     D)a=a+7=a+b

 

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

A)15    B)60     C)30     D)不确定

 

20 设Int n=3;则n++的结果是(   )。

A)2     B)3     C)4      D)5

 

21 用小数或指数形式输入实数时,在scanf函数语句里格式字符为(    )。

A)i    B)f    C)e     D)g

 

22 可以使用(   )输入字符型数据。

A)putchar(c);   B)getchar(c);   C)getchar();    D)scanf("%c",&c);


23 C语言中数据有常量与变量之分。

24 一般一个字符变量在内存中占一个字节。

25 C语言规定,可以在定义变量时,同时使变量初始化。

26 把k1、k2定义成基本整型变量,并赋初值0的定义语句是int k1=k2=0。

27 如果i的原值为3,则:j = ++ i,j的值为3。  

28 凡是表达式都有一个值。

29 输入语句的格式为:scanf("%d,%d,%d",a,b,c);是正确的。

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

31 getchar函数的功能是接收从键盘输入的一个整数。  

32 假定变量a,b,c在说明时已赋初值,则 if  ((a=b;)>0)  c=a;是正确的。  

33 printf函数是一个标准库函数,它的函数原型在头文件"string.h"中。 

34 在printf函数中,格式字符d的意义是:以十进制形式输出带符号整数。

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

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

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

 

38 若有以下定义:char c='\010';则变量C中包含的字符个数为(   )。

39 若有以下定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为【  】。(x+y)%2+(int)a/(int)b

40 若a是int型变量、且a的初值为6,则执行下面表达式后,a的值为【   】。a+=a-=a*a

41 若x是int型变量,则执行下面表达式后,x的值为【  】。x=a=4,6*2

42 若a是int型变量,且a的初值为6,则计算表达式后a的值为【   】。a+=a-=a*a 

43 scanf函数的地址表列中给出各变量的地址,地址是由【   】后跟变量名组成的。

44 使用getchar函数接收字符,若输入多于一个字符时,只接收第【    】个字符。

45 C语言的格式输出函数是【        】。

46 当a=5,b=4,c=2时,表达式a>b!=c  的值是【   】

47 已知A=7.5,B=2,C=3.6,表达式A>B&&C>A || A<B&&!C>B的值是【   】

48 若a=3,b=2,c=1,则表达式a-b<c||b==c的值是【   】

49 有int a=0,b=4,c=5;则表达式a||b+c&&b!=c的值为【   】


答案:

1.A     2.D      3.C     4.B     5.C     6.B     7.A     8.B

9.C     10.B     11.D    12.D    13.B    14.C    15.C    16.C

17.A    18.B     19.C    20.B     21.BCD   22.CD

23.对   24.对    25.对    26.错    27.错   28.对   29.错   30.错

31.错   32.错    33.错    34.对    35.错   36.对   37.对

38.1    39.1     40.60    41.4     42.60   43.&

44.1    45.printf()       46.1     47.0    48.0    49.1



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值