- 23
- 0
- 约7.72万字
- 约 55页
- 2017-01-03 发布于重庆
- 举报
1.有以下程序
int a=3;
main()
{int s=0;
{int a=5; s+=a++; }
s+=a++; printf(%d\n,s);
}
程序运行后的输出结果是_______。
选项:A.8 B.7 C.10 D.11
评析: 选项A的错误在于switch语句后面不该加分号;
选项B的错误在于switch语句要求每一个case的常量表达式的值必须互不相同;
选项C的错误在于变量a应该用括号括起来,case后面应该是常量表达式,而不是变量。
本题答案为D。
2. 若有说明:int n=2,*p=n,*q=p;,则以下非法的赋值语句是______。
选项:A.*p=*q B. p=q C.n=*q D.p=n
评析:本题的考查点是指针变量的引用。
指针变量不同于整型变量和其它类型的变量,它是用来存放地址(指针)的,不能将一个整型量(或任何其它非地址类型的数据)赋给一个指针变量,这样的赋值是不合法的。本题中的答案D就属于这种情况,所以p=n;是非法的赋值语句。
故本题答案为D。
3. 在说明语句:int *f();中,标识符f代表的是______。
选项: A.一个用于指向整型数据的指针变量
B.一个用于指向函数的指针变量
C.一个用于指向一维数组的
原创力文档

文档评论(0)