三千芳华 发表于 2018-9-3 11:29:18

大佬们救命啊

自己想把学到的东西融合在一起试试,但是这样却出错了,自己排查了很久,改了几处错误,但现在真不行了,靠自己搞不明白了,求助啊

就是一个求,,,平均值的

#include <stdio.h>
#define PS 4
#define PSP 5

float over(unsigned int * );

int main()
{
        printf("请输入20个正整数,我们会将其进行神奇的变化\n");
        float u;
        unsigned int sub;
        unsigned int (* subt)=sub;
        int i,j;
        for(i=0;i<PS;i++)
        {
                for(j=0;j<PS;j++)
                {
                        scanf("%u",*(subt+i)+j);
                }
        }
        u=over((*subt));
        printf("变化的结果%.2f",u);
}

float over(unsigned int * p)
{
        float u;
        unsigned int j,q,i=0;
       
        for(j=0,q=0;j<4;j++)
        {
                q=q+*(*(p+i)+j);
        }
        return u=q/4;
}

Subly 发表于 2018-9-3 13:03:31

j的循环错了吧,PSP?
出错好歹把错误信息给一下呀

人造人 发表于 2018-9-3 13:28:17

易晓外 发表于 2018-9-3 14:18:13

#include <stdio.h>
#define PS 4
#define PSP 5

float over(unsigned int (*)); //修改;函数形参类型要对应上

int main()
{
      printf("请输入20个正整数,我们会将其进行神奇的变化\n");
      float u;
      unsigned int sub;
      unsigned int (* subt)=sub;
      int i,j;
      for(i=0;i<PS;i++)
      {
                for(j=0;j<PSP;j++) //修改;这应该是PSP,不解释
                {
                        scanf("%u",*(subt+i)+j);
                }
      }
      u=over(subt);//修改;实参类型注意
      printf("变化的结果%.2f",u);
}

float over(unsigned int (*p))
{
      float u;
      unsigned int j,q,i=0;
      
      for(j=0,q=0;j<4;j++)
      {
                q=q+*(*(p+i)+j);
      }
      return u=q/4.0;//修改;整数除整数是整除,应注意
}

//PS:多看看指针,弄懂是指向什么的指针;

三千芳华 发表于 2018-9-3 15:26:37

易晓外 发表于 2018-9-3 14:18


指针我已经翻来覆去学习好几次了,还是似懂非懂,最后决定还是实践出真知吧。谢谢大佬

三千芳华 发表于 2018-9-3 15:27:32

人造人 发表于 2018-9-3 13:28


造人大佬,你这个软件是什么,我的软件错误提示都是英文

三千芳华 发表于 2018-9-3 15:28:06

Subly 发表于 2018-9-3 13:03
j的循环错了吧,PSP?
出错好歹把错误信息给一下呀

下次会注意的{:10_254:}

人造人 发表于 2018-9-3 22:47:47

三千芳华 发表于 2018-9-3 15:27
造人大佬,你这个软件是什么,我的软件错误提示都是英文

vs2017
页: [1]
查看完整版本: 大佬们救命啊