jackFrankie 发表于 2020-5-7 11:46:34

代码无法运行

呜呜呜,代码如下:

#include<stdio.h>
#include<math.h>
#include <string.h>

int main()
{
        int n;
        float y,x,averx,avery,lxx,lyy,lxy;
        int i;
        float sumy=0,sumx=0,sosquy=0,sosqux=0,soxy=0;
        printf("请输入试验次数:");
        scanf("%d",&n);
       
        for(i=0;i<n;i++)
        {
                printf("请输入第%d次实验的指标:",i+1);
                scanf("%f",&y);
                sumy+=y;
                sosquy+=y*y;
        }
       
        for(i=0;i<n;i++)
        {
                printf("请输入第%d次实验该因素的水平:",i+1);
                scanf("%f",&x);
                sumx+=x;
                sosqux+=x*x;
                soxy+=x*y;
        }
       
        averx=sumx/n;
        avery=sumy/n;
        lxx=sosqux-n*averx*averx;
        lyy=sosquy-n*avery*avery;
        lxy=soxy-n*averx*avery;
       
        printf("%f%f%f",lxy,lyy,lxy);
       
        return 0;
}
没有报错没有警告但是无法运行。。。。
但是

        lxx=sosqux-n*averx*averx;
        lyy=sosquy-n*avery*avery;
        lxy=soxy-n*averx*avery;
这三行
任意去掉两行,只留下其中一行就可以运行了,是存在什么冲突吗?
拜托大佬帮帮我

sunrise085 发表于 2020-5-7 12:32:50

问题不在下面那几行代码
是定义数组的时候出问题了。
float y,x,averx,avery,lxx,lyy,lxy;
这一行代码中n尚未赋值,这样使用就会出错了。
你若真想这样用,也需要把两个数组的定义放到 n 赋值之后
#include<stdio.h>
#include<math.h>
#include <string.h>

int main()
{
    int n;
    float averx,avery,lxx,lyy,lxy;
    int i;
    float sumy=0,sumx=0,sosquy=0,sosqux=0,soxy=0;
    printf("请输入试验次数:");
    scanf("%d",&n);
    float y,x;
    for(i=0;i<n;i++)
    {
      printf("请输入第%d次实验的指标:",i+1);
      scanf("%f",&y);
      sumy+=y;
      sosquy+=y*y;
    }
   
    for(i=0;i<n;i++)
    {
      printf("请输入第%d次实验该因素的水平:",i+1);
      scanf("%f",&x);
      sumx+=x;
      sosqux+=x*x;
      soxy+=x*y;
    }
   
    averx=sumx/n;
    avery=sumy/n;
    lxx=sosqux-n*averx*averx;
    lyy=sosquy-n*avery*avery;
    lxy=soxy-n*averx*avery;
   
    printf("%f,%f,%f",lxy,lyy,lxy);
    return 0;
}

jackFrankie 发表于 2020-5-8 00:19:47

sunrise085 发表于 2020-5-7 12:32
问题不在下面那几行代码
是定义数组的时候出问题了。
float y,x,averx,avery,lxx,lyy,lxy;


wow!!我懂了!非常感谢!!!!
页: [1]
查看完整版本: 代码无法运行