问题 单项选择题

下列程序段中,不能正确赋值的是

A.char * p,ch;
p=&ch;
scanf("%c,&p")

B.char * p;
p=(char*)malloc(1)
scanf("%c",p);

C.char *p
*p=getchar( );

D.char *p,ch;
p=&ch;
*p=getchar( );

答案

参考答案:C

解析: 本题考查了字符的输入函数getchar和利用scanf函数输入一个字符。用scanf输入字符时,格式说明字符应该为%c。本题选项C)因为指针 p没有赋初值,所以是一个不定值,不能直接将getchar读入的字符赋给指针p所指向的字符,所以选项C错误。

单项选择题 A2型题
问答题 简答题