数据类型及运算

一、选择题

  1. 下面四个选项中,均是不合法的用户标识符的选项的是_C______。
    A.A p_o do
    B.float lao _A
    C.b-a goto int
    D._123 temp INT

  2. 以下选项中可以作为C语言中合法整数的是_C______。
    A.10110B
    B.0386
    C.0Xffa
    D.x2a2

  3. 以下选项中合法的实型常数是_C______。
    A.5E2.0
    B.E-3
    C.2E0
    D.1.3E

  4. 以下选项中可作为C语言合法常量的是_A______。
    A.-80
    B.-080
    C.-8e1.0
    D.-80.0e

  5. 下面四个选项中,均是合法转义字符的选项是__B_____。
    A. '\' ' \\' '\n'
    B. '\'' '\017' '\t'
    C. '\018' ' \f' '\xab'
    D. '\\0' '\101' 'x1f'

  6. 下面不正确的字符串常量是___A____。
    A. ‘abc’
    B. “12’12”
    C. “0”
    D. " "

  7. 以下选项中不属于C语言的类型的是____D___。
    A.signed short int
    B.unsigned long int
    C.unsigned int
    D.long short

  8. 在C语言中,要求运算数必须是整型的运算符是___D____。
    A./
    B.++
    C.!=
    D.%

  9. 以下运算符中优先级最低的是_C______。
    A.&&
    B.<=
    C.||
    D.==

  10. 以下运算符中优先级最高的是____B___。
    A.&&
    B.<=
    C.||
    D.==

  11. 若x = 2 , y=3,则x && y的结果是__B_____。
    A.0
    B.1
    C.2
    D.3

  12. 若x,i,j和k都是int型变量,则计算表达式x = ( i = 4 , j = 16 , k = 32 )后,x的值为___C____。
    A.4
    B.16
    C.32
    D.52

  13. 若有定义:int a = 7 ; float x = 2.5 , y = 4.7 ; ,则表达式x + a % 3 * ( int )( x + y ) % 2 / 4的值是___A____。
    A.2.500000
    B.2.750000
    C.3.500000
    D.0.000000

  14. 若有以下类型说明语句:char w ; int x ; float y ; double z ; ,则表达式w * x + z - y的结果为___D____类型。
    A.float
    B.char
    C.int
    D.double

  15. 已有定义:int x = 3 , y = 4 , z = 5 ; 则表达式!( x + y ) + z – 1 && y + z / 2的值是___D____。
    A.6
    B.0
    C.2
    D.1

  16. 以下选项中非法的表达式是___D____。
    A.0 <= x < 100
    B.i = j == 0
    C.( char )( 65 + 3 )
    D.x + 1 = x + 1

  17. 设a、b、c、d、m、n均为int型变量,且a = 5、b = 6、c = 7、d = 8、m = 2、n = 2,则逻辑表达式( m = a > b ) && ( n = c > d)运算后,n的值为___C____。
    A.0
    B.1
    C.2
    D.3

  18. 若变量c为char类型,能正确判断出c为小写字母的表达式是___D____。
    A.‘a’ <= c <= ‘z’
    B.( c >= ‘a’ ) || ( c <= ‘z’ )
    C.( ‘a’ <= c ) and ( ‘z’ >= c )
    D.( c >= ‘a’ ) && ( c <= ‘z’ )

  19. 若x和y代表整型数,以下表达式中不能正确表示数学关系|x―y|<10的是___C____。
    A.abs( x – y ) < 10
    B.x – y > -10 && x – y < 10
    C.!( x – y ) < -10 || !( y – x ) > 10
    D.( x – y ) * ( x – y ) < 100

二、填空题

  1. C语言中的标识符只能由三种字符组成,它们是 数字字母下划线。(请按照ASCII码递增顺序填写)

  2. 在C语言中(以32位PC机为例),一个char型数据在内存中所占的字节数为 1,一个int型数据在内存中所占的字节数为 4,一个float型数据在内存中所占的字节数为 4,一个double型数据在内存中所占的字节数为 8

  3. 有以下定义int m = 5,y = 2;则计算表达式y += y -= m *= y后的y值是 -16

  4. 若定义:int a = 2,b = 3;float x = 3.5,y = 2.5;则表达式( float )(a + b ) / 2 + ( int ) x % ( int ) y的值是 3.5

  5. x和n均为int型变量,且x的初值为12,n的初值为5,则计算表达式x %= ( n %= 2 )后x的值为 0

  6. 设所有变量均为整型,则表达式( a = 2 , b = 5 , a++ , b++ , a + b )的值为 9

  7. a、b和c均是int型变量,则计算表达式a = ( b = 4 ) + ( c = 2 )后,a值为 6,b值为 4,c值为 2

  8. a是int型变量,且a的初值为6,则计算表达式a += a -= a * a后a的值为 -60

  9. 设y是int型变量,请写出判断y为奇数的关系表达式 y%2==1

  10. 若a,b,c均为整型变量,则执行以下语句a = b = c = 0 ; a++ && ++b || c++ ; 后,a的值为 1,b的值为 0,c的值为 1

11.下面程序的运行结果是 b

#include<stdio.h>
int main( ){
  char m ;
  m = 'B' + 32 ;
  printf( "%c\n" , m ) ;
  return 0 ;
}
  1. 下面程序的运行结果是 0
#include<stdio.h>
int main( ){ 
  int x = 3 , y = 5 ;
  printf( "%d\n" , x / y ) ;
  return 0 ;
}
  1. 下面程序的运行结果是 0
#include<stdio.h>
int main( ){
  int m = 0xabc , n = 0xabc ;
  m -= n ;
  printf( "%x\n" , m ) ;
  return 0 ;
}
  1. 下面程序的运行结果是 10,2
#include<stdio.h>
int main( ){
  int x = 10 , y = 3 ;
  printf( "%d,%d\n" , x++ , --y ) ;
  return 0 ;
}
  1. 下面程序的运行结果是3,20,30,1
#include<stdio.h>
int main( ){
  int a = 2 , b=20 , c=30 , d ;
  d = ++a <= 10 || b-- >= 20 || c++ ;
  printf( "%d,%d,%d,%d\n" , a , b , c , d ) ;
  return 0 ;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值