怎么查询华为手机真假:设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是:
来源:百度文库 编辑:高校问答 时间:2024/07/08 12:08:02
A scanf("%d",pa);
B scanf("%d",a);
C scanf("%d",&pa);
D scanf("%d",*pa);
答案竟然是A,请解释下,为什么不是B呢?或则是C|D呢饿
B scanf("%d",a);
C scanf("%d",&pa);
D scanf("%d",*pa);
答案竟然是A,请解释下,为什么不是B呢?或则是C|D呢饿
定义的时候就已经说了pa是指针变量了啊,同时赋予了整型变量a的地址的值。在scanf语句中,pa所代表的就是等同与&a的一个地址数值。计算机靠这个地址的值找到要存储的位置。
B.很明显就错了啊,scanf("%d",a); 这个位置中,a处要填的是地址的值,a只是一个变量名。
C.&pa根本就不代表什么,在定义里,要写*pa才代表pa这个变量是指针变量,而在语句中,只要写pa就代表指针了,写成*pa反而代表的是那个地址所存储的内容。
D.跟B等同效果。
答案为A 因为scanf()中的第二个参数就是要输入的那个数的地址,由于有*pa=&a,所以,pa就是a的内存地址了,所以选A 它等于scanf("%d",&a);
答案当然是A
函数名称: scanf
函数原型: int scanf(char * format,args,...);
函数功能: 从标准输入设备按format指向的格式字符串规定的格式,输入数据给agrs所指向的单元.
函数返回: 读入并赋给args的数据个数.遇文件结束返回EOF,出错返回0.
函数说明: args 为指针.
scanf函数后面跟的必须是地址或者指针
设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是:
设有语句int a=3;则执行了语句a+=a-=a*a;后变量a是多少?
设有语句int a=3;则执行了语句a+=a-=a*a;后变量a是多少?
设有语句 int a = 3; 执行语句 a+=a-=a*a;后,变量a的值是多少?
若已定义 int a=5;int*p=&a;则正确的是?
已有定义int=-2;和输出语句printf(%8Lx“,a);以下正确的叙述是()
若已定义int a=5; int=*P[4],则标识符是一个
若有定义语句 int a[5], *p=a;,则对A数组元素地址的正确引用是【 】
若有定义语句int a[5], *p=a;,则对a数组元素的正确引用是______。
为什么不能定义成int a=b=c=2;而要定义成int a=2,b=2,c=2;