鱼C论坛

 找回密码
 立即注册
查看: 1808|回复: 7

[已解决]大佬们救命啊

[复制链接]
发表于 2018-9-3 11:29:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

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

就是一个求[0][0],[0][1],[0][2],[0][3]平均值的
#include <stdio.h>
#define PS 4
#define PSP 5

float over(unsigned int * ); 

int main()
{
        printf("请输入20个正整数,我们会将其进行神奇的变化\n");
        float u;
        unsigned int sub[PS][PSP];
        unsigned int (* subt)[PSP]=sub;
        int i,j;
        for(i=0;i<PS;i++)
        {
                for(j=0;j<PS;j++)
                {
                        scanf("%u",*(subt+i)+j);
                }
        }
        u=over((*subt)[PSP]);
        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;
}
最佳答案
2018-9-3 14:18:13
#include <stdio.h>
#define PS 4
#define PSP 5

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

int main()
{
        printf("请输入20个正整数,我们会将其进行神奇的变化\n");
        float u;
        unsigned int sub[PS][PSP];
        unsigned int (* subt)[PSP]=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)[PSP])
{
        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:多看看指针,弄懂是指向什么的指针; 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-9-3 13:03:31 | 显示全部楼层
j的循环错了吧,PSP?
出错好歹把错误信息给一下呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-3 13:28:17 | 显示全部楼层
1.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-3 14:18:13 | 显示全部楼层    本楼为最佳答案   
#include <stdio.h>
#define PS 4
#define PSP 5

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

int main()
{
        printf("请输入20个正整数,我们会将其进行神奇的变化\n");
        float u;
        unsigned int sub[PS][PSP];
        unsigned int (* subt)[PSP]=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)[PSP])
{
        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:多看看指针,弄懂是指向什么的指针; 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-3 15:26:37 | 显示全部楼层

指针我已经翻来覆去学习好几次了,还是似懂非懂,最后决定还是实践出真知吧。谢谢大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-3 15:27:32 | 显示全部楼层

造人大佬,你这个软件是什么,我的软件错误提示都是英文
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-3 15:28:06 | 显示全部楼层
Subly 发表于 2018-9-3 13:03
j的循环错了吧,PSP?
出错好歹把错误信息给一下呀

下次会注意的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

vs2017
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-30 08:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表