若int *p,m=5,n;正确的是( )
来源:百度知道 编辑:UC知道 时间:2024/06/04 20:05:50
A)p=&n;scanf("%d",&p)B)p=&n;scanf("%d",*p);C) scanf("%d",&n);*p=n;D) p=&n;*p=m;为什么选d啊?
若*p,m=5,n=4;经过D) p=&n;*p=m;后n=5吗,为什么/?
若*p,m=5,n=4;经过D) p=&n;*p=m;后n=5吗,为什么/?
A)p=&n;scanf("%d",&p)
p已经是指向n的地址了,因此输入应当是scanf("%d",p);
B)p=&n;scanf("%d",*p);
*p是取出p所指向的地址的值,不是地址了,因此错误!
C) scanf("%d",&n);*p=n
定义了指针,如果要使用必须先赋值,否则指向的是随机地址,不对!
D) p=&n;*p=m;
先将p指向n的地址,*p=m;是将m赋给了p所指的地址的值.也就等于是改变了n的值.
A:p本来就代表地址变量,所以应该scanf("%d",p);
B;*p代表的是n的值,不代表地址,应该;scanf("%d",p);
C;严重错误!指针变量未附值,会给系统带来无法预料的后果!切记!切记!
若int *p,m=5,n;正确的是( )
若有说明int *p,m=5,n;下面正确的程序段是?
int *p, m=5, n; A p=&n; scanf("%d", *p); B scanf("%d", &n); p=n; C p=&n; *p=m;
若有说明:int n=2,*p=&n,*q=p;则以下非法的赋值语句是 a) *p=q; b) p=n;
int gcd(int m,int n) { int r,t; if(m<n) {t=m;m=n;n=t;}
已知点P(m+3,n-5),若点P在坐标轴上,则m= n=
若a、b、c、d、m、n、都是正实数,且p=√ab+√cd,Q=√(ma+nc)√(b/m+d/n)求P,Q大小关系
若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是______。
p=m!/n!(m-n)! 是什么意思
M=9550p/n