设有定义:double x[1O],*p=x;以下能给数组x下标为6的元素读入数据的正确语句是

设有定义:double x[1O],*p=x;以下能给数组x下标为6的元素读入数据的正确语句是
A.scanf("%f",&x[6]);
B.scanf("%lf",*(x+6));
C.scanf("%lf",p+6);
D.scanf("%lf",p[6]);
请看下我的理解是不是对的
A:题目中定义的是double.所以是%lf.所以错
B:*(x+6)等价于x[6],但是scanf读入的是赋值变量的地址,所以也错.
C:p+6是指向x[6]的地址.所以对
D:p是指针不是数组,所以不能写成p[6]
上面的D是这样理解的么?
其他人气:881 ℃时间:2019-10-18 02:14:41
优质解答
D不能这样理解.写法是合法的,只是p[6]是下标为6的元素,不是元素指针,要写成&p[6]就对了.所以错误.其他都分析得对.
我来回答
类似推荐
请使用1024x768 IE6.0或更高版本浏览器浏览本站点,以保证最佳阅读效果。本页提供作业小助手,一起搜作业以及作业好帮手最新版!
版权所有 CopyRight © 2012-2024 作业小助手 All Rights Reserved. 手机版