C语言易错题(1)

判断题

  1. 执行以下程序段,sum的值是55。(F)

    int i, sum;
    
    for (i = 1; i <= 10; i++){
    
        sum = sum + i;
    
    }     

    解析:sum没有初始化:sum=0

  2. 执行以下程序段,sum的值是0.75。(F)

    int i;
    
    double sum;
    
    sum = 0;
    
    for (i = 2; i <= 4; i = i + 2){
    
        sum = sum + 1/i;
    
    }

    解析:sum=0

  3. 使用输入语句“scanf(" a=%d, b=%d", &a,&b);”给a赋值1,给b赋值2,输入数据的形式可以是 1, 2。 (T)解析:严格来说应该输入a=1,b=2;但输入1,2也是可以的 注意:不能把逗号替换成空格、回车、Tab键或遇非法字符(不属于数值的字符),会认为该数据结束。

  4. int x; 计算(double)x后,x的类型为double。(F)

    解析:(double)是强制类型转换,转换成double型,这里要注意一个问题,就是强制类型更转换只是生成一个中间结果,不会改变变量的类型。

  5. 若变量定义为double x;,则x % 2是符合C语言语法的表达式。(F)

    解析:double表示双精度浮点数,也就是小数,取余运算%只能对整数做,因此不符合C语言语法。

  6. 在switch语句中,每一个的case常量表达式的值可以相同。(F)
  7. 若有int =10, j=0;则执行完下面的语句后的值为11。(F)

    if (j = 0)
    
      ⅰ++;
    
    else
    
      ⅰ--;

    解析:表达式j=0的值是0

    if(j=0)就等于if(0)

    0又代表假

    所以执行else后的语句i--,10--值为9

  8. break语句只能用于循环语句中。(F)

    解析:对break只能用在循环体内和switch语句体内,不能单独使用或用于其它语句中。

选择题

  1.         

    定义变量 int a;,则表达式 a = 3, 5;执行过后,a的值和表达式的值分别是: A

    A.3 , 5

    B.5 , 3

    C.3 , 3

    D.5 , 5

    解析:a=3,5;执行的时候是 (a=3),(5);,3会赋值给a,一个语句执行的顺序是从左往右,最后执行到5,所以表达式的值是5。

  2. 对于循环while(!e) 语句,!e等价于_C_。 

    A.e==0

    B.e!=0

    C.e==1

    D.e!=1

  3. 下列程序段的输出结果是(C)。 (2分)

    int main(void)
    
    {   
    
          int  a = 2, b = -1, c = 2;
    
    
    
          if(a < b)
    
                if(b < 0)  
    
                      c = 0;
    
          else  c++;
    
          printf("%d\n",c);
    
    
    
          return 0;
    
    }

    A.0

    B.1

    C.2

    D.3
    解析:else对应的是第二个if,所有c的值没变

  4. 下列程序段运行后x的值是 (B)

    int a = 0, b = 0, c = 0, x = 35;
    
    if (!a)x--;
    
    else if (b);
    
    if (c)x = 3;
    
    else x = 4;

    A.34

    B.4

    C.35

    D.3

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值