题目内容

下面程序应能对两个整型变量的值进行交换。以下正确的说法是__________。intmain(){inta=10,b=20;printf("%d,%d",a,b);swap(&a,&b);printf("%d,%d",a,b);return0;}voidswap(intp,intq){intt;t=p;p=q;q=t;}

A. 该程序完全正确
B. 该程序有错,只要将语句swap(&a,&b);中的参数改为a,b即可
C. 该程序有错,只要将swap()函数中的形参p和q以及t均定义为指针(执行语句不变)即可
D. 以下说法都不正确

查看答案
更多问题

以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是________。int main(){int *p,*q,a,b;p=&a;scanf("%d",*p);........;return 0;}

A. *p表示的是指针变量p的地址
B. *p表示的是变量a的值,而不是变量a的地址
C. *p表示的是指针变量p的值
D. *p只能用来说明p是一个指针变量

有如下语句 int a=10,b=20,*p1,*p2; p1=&a; p2=&b; 若要让p1也指向b,可选用的赋值语句是_______。

A. *p1=*p2;
B. p1=p2;
C. p1=*p2;
D. *p1=p2;

下面程序段的运行结果是__________。char a[]="language",*p;p=a;while(*P!='u') {printf("%c",*p-32); p++;}

A. LANGUAGE
B. language
C. LANG
D. langUAGE

若已定义char *string="acegik";则以下表达式的值不等于'c'的是______。

A. *++string
B. *(string+1)
C. *string+1
D. string[1]

答案查题题库