问题

若有定义 : float x=1.5; int a=1,b=3,c=2; 则正确的 switch 语句是

A)

switch(x)

{ case 1.0: printf("*\n");

case 2.0: printf("**\n");}

B)

switch((int)x);

{ case 1: printf("*\n");

case 2: printf("**\n");}

C)

switch(a+b)

{ case 1: printf("*\n");

case 2+1: printf("**\n");}

D)

switch(a+b)

{ case 1: printf("*\n");

case c: printf("**\n");}

参考答案
您可能感兴趣的试题
  • 若各选项中所用变量已正确定义,函数 fun 中通过 return 语句返回一个函数值,以下选项中错误的程序是A)main(){ …… x=fun(2,10); …… }float fun(int a,
  • 在以下给出的表达式中,与 while(E) 中的 (E) 不等价的表达式是A)(!E==0)B)(E>0 ‖ E<0)C)(E==0)D)(E!=0)
  • 要求通过 while 循环不断读入字符 , 当读入字母 N 时结束循环 。 若变量已正确定义 , 以下正确的程序段是A)while((ch=getchar())!=N) printf( % c
  • 已定义以下函数int fun(int *p){ return *p;)fun 函数返回值是A) 不确定的值B) 一个整数C) 形参 P 中存放的值D) 形参 P 的地址值
  • 若有说明语句 : double *p,a; 则能通过 scanf 语句正确给输入项读入数据的程序段是A)*p=&a; scanf( % 1f,p);B)*p=&a; scanf( % f,p)
  • 有以下程序段struct st{int x;int *y;)*pt;int a[]={l,2},b[]={3,4};struct st c[2]={10,a,20,b};pt=c;以下选项中表达式的值