starlight898 2023-01-16 02:04 采纳率: 50%
浏览 28
已结题

要求分别用数组和指针作为函数参数。

有一数组,存放10名学生的成绩,编写函数,计算并输出平均成绩。学生成绩在主函数中输入,并在主函数中输出平均成绩,要求分别用数组和指针作为函数参数。
#include<stdio.h>
int aver()
{
int *p;
int sum = 0,average,i;
int a[10];
p = &a[0];
for(i=0;i<10;i++)
{
sum = sum + *p;
*p++;
}
average = sum / 10;
printf("%d", average);
return average;
}
void main()
{
int aver();
int a[10],i;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
printf("%d",aver);
}

  • 写回答

4条回答 默认 最新

  • qzjhjxj 2023-01-16 09:58
    关注

    供参考:

    #include<stdio.h>
    #define N 10
    float aver(int a[]) //数组作为参数
    { 
        float sum = 0;
        int   i;
        for (i = 0; i < N; i++)
            sum = sum + a[i];
        sum /= N;
        return sum;
    }
    float aver1(int* p) //指针作为参数
    {
        float sum = 0;
        int* q;
        for (q = p; q < p + N; q++)
            sum += *q;
        sum /= N;
        return sum;
    }
    void main()
    {
        float aver(int a[]);
        float aver1(int* p);
        int a[N], i;
        for (i = 0; i < 10; i++)
            scanf("%d", &a[i]);
        printf("%.2f\n", aver(a));
        printf("%.3f", aver1(a));
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 1月24日
  • 已采纳回答 1月16日
  • 修改了问题 1月16日
  • 创建了问题 1月16日

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?