蓝桥杯2010年试题

来源:互联网 发布:linux l2tp client 编辑:程序博客网 时间:2024/04/29 14:57
1. 执行下列程序中的输出语句后,x的值是______
  main()
  {int x ;
  printf(“%d\n”,(x=5*6,x*2,x+20));}

  A)30 B)60 C)50 D)80

答案选    A    


虽然输出结果是  50   ;但是这个题目答案应该是30 ;

分析如下:

根据定义,逗号表达式的返回值是最后一个子表达式的结果值。逗号运算级别最低,首先执行x=5*6=30;然后 x*2 然后  x +20,输出结果是 50

如果改一下程序:把x+20去掉,则输出 60,验证了我上述说法


仔细阅读题目,题目问的是 x的值,x =5*6=30;

2). 在C语言中,下列选项属于合法的长整型常数的是_______.
  A)0L B)1234567 C)0.0234567 D)3.14159e3

答案:     A

3). 若有定义:int a,b;char x,y;并有以下输入数据: 14 22 XxYy (回车)

  则能给a赋整数14,给b赋整数22,给x赋字符x,给y赋字符y的正确程序段是________.

  A) scanf(“%d %d”,&a,&b);x=getchar();y=getchar();

  B) scanf(“%d%d %c %c”, &a, &b,&x,&x,&y,&y);

  C) scanf(“%d %d %c%c%c %c”, &a,&b,&x,&x,&y,&y);

  D) scanf(“%d%d %c %c”, &a, &b,&x,&y);

答案: C


4). 当c的值不为0时,下列选项中能正确将c的值赋给变量a、b的是_______.

  A)c=b=a; B)(a=c)‖(b=c); C)(a=c)&&(b=c);D)a=c=b;  

答案:   C

分析: 主要考察 变量赋值从右到左,和&&  ||的运行机制,&&只有两个都为真的时候才为真,||有一个为真的时候,另外一个就不执行了 。


0 0
原创粉丝点击