为了账号安全,请及时绑定邮箱和手机立即绑定

跪求!C语言指针数组刷题十分感谢

跪求!C语言指针数组刷题十分感谢

白猪掌柜的 2019-08-11 15:04:28
今天刷题碰到一个指针数组的题,解不出来,求大佬指点..题:将十个整数输入数组,求出其平均值并输出。main(){inti,a[10],sum=0,p=______;/第一空*/for(i=0;i
查看完整描述

2 回答

?
九州编程

TA贡献1785条经验 获得超4个赞

第一空:int指针指向数组,可以是*p=a,也可以是*p=&a[0],可能第二种方式更好理解,指针指向数组的第一个元素的地址,但是前面的方式更常见,它和函数指针的写法类似;
第二空:sum+=*p++,这里p采用后缀自增,*p++的意义是先复制p,解引用p(也就是拿到*p),然后再移动指针p;
第三空:sum/10.0,这里sum是int型,打印的是float型,所以要除以10.0,然后int型会转换为float计算;
代码如下:
#include
int
main(intargc,char*argv[])
{
inti,a[10],sum=0,*p=a;
for(i=0;i<10;i++){
scanf("%d",p);
sum+=*p++;
}
printf("%8.2f\n",sum/10.0);
return0;
}
运行结果如下:
root@lui-pc:~/CLionProjects/test01/cmake-build-debug#./test01
1
2
3
4
5
6
7
8
9
10
5.50
root@lui-pc:~/CLionProjects/test01/cmake-build-debug#
                            
查看完整回答
反对 回复 2019-08-11
  • 2 回答
  • 0 关注
  • 455 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信