C |变量声明和范围|问题6

输出

null

#include <stdio.h>
int main()
{
int x = 1, y = 2, z = 3;
printf ( " x = %d, y = %d, z = %d " , x, y, z);
{
int x = 10;
float y = 20;
printf ( " x = %d, y = %f, z = %d " , x, y, z);
{
int z = 100;
printf ( " x = %d, y = %f, z = %d " , x, y, z);
}
}
return 0;
}


(A)

 x = 1, y = 2, z = 3
 x = 10, y = 20.000000, z = 3
 x = 1, y = 2, z = 100

(B) 编译错误 (C)

 x = 1, y = 2, z = 3
 x = 10, y = 20.000000, z = 3
 x = 10, y = 20.000000, z = 100 

(D)

 x = 1, y = 2, z = 3
 x = 1, y = 2, z = 3
 x = 1, y = 2, z = 3

答复: (C) 说明: 看见 C语言中的作用域规则 这个问题的小测验

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享