鱼C论坛

 找回密码
 立即注册
查看: 2872|回复: 4

[已解决]新手求助

[复制链接]
发表于 2021-10-14 21:47:15 | 显示全部楼层 |阅读模式
5鱼币
请问,为什么输出为零??
不用看/**/之间的部分,也不用管没有用到的变量,也没有问题
#include<stdio.h>

int main()
{
        int l,i,j,k,n;
        double a[100000],sum=0,mid=0,result=0;
        scanf("%d%d",&n,&l);
        
        for(i=0;i<n;i++)
        {
                scanf("%d",&a[i]);
                sum+=a[i];
        }
        
        mid=sum/(double)n;
        printf("%lf\n",mid);
        /*for(i=0,j=n-1;j-i<l;)
        {
                if(a[i]-mid<a[j]-mid)
                j--;
                else if(a[i]-mid>a[j]-mid)
                i++;
                else
                {i++;j--;}
        }
        
        for(k=i;k>j+1;k++)
        {
                printf("%lf\n",a[k]);
                result+=a[k];
        }
        printf("%lf\n",result);
        
        result=result/6*1000;
        
        printf("%lf",(int)result);
        
        */return 0;
 } 
最佳答案
2021-10-14 21:47:16
scanf("%d",&a[i]);
scanf("%lf",&a[i]);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-14 21:47:16 | 显示全部楼层    本楼为最佳答案   
scanf("%d",&a[i]);
scanf("%lf",&a[i]);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-15 09:49:40 | 显示全部楼层
#include<stdio.h>

int main(){
    int l,i,j,k,n;
    double a[100000],sum=0,mid=0,result=0;
    scanf("%d %d", &n, &l); // 这里输入 2个参数,%d %d 建议以空格隔开,不然怎样输入 2个参数?
    
    for(i=0; i<n; i++){
            scanf("%lf", &a[i]); // 改写成 %lf(double形态)
            sum += a[i];
    }
    mid = sum/(double)n;
    printf("%lf\n", mid);
    /*for(i=0,j=n-1;j-i<l;)
    {
            if(a[i]-mid<a[j]-mid)
            j--;
            else if(a[i]-mid>a[j]-mid)
            i++;
            else
            {i++;j--;}
    }
    
    for(k=i;k>j+1;k++)
    {
            printf("%lf\n",a[k]);
            result+=a[k];
    }
    printf("%lf\n",result);
    
    result=result/6*1000;
    
    printf("%lf",(int)result);
    
    */return 0;
 } 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-15 10:31:15 | 显示全部楼层
scanf("%d %d", &n, &l); // 这里输入 2个参数,%d %d 建议以空格隔开,不然怎样输入 2个参数?
这个不影响的,没有空格也可以
$ cat main.c
#include <stdio.h>

int main(void) {
    int a, b;
    scanf("%d%d", &a, &b);
    printf("a: %d, b: %d\n", a, b);
    return 0;
}
$ gcc -g -Wall -o main main.c
$ ./main
123 456
a: 123, b: 456
$
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-15 10:39:07 | 显示全部楼层
人造人 发表于 2021-10-15 10:31
这个不影响的,没有空格也可以

感谢指导
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-1 20:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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