鱼C论坛

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

同Sample问题

[复制链接]
发表于 2022-4-9 20:26:47 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 葳蕤银河 于 2022-4-9 20:29 编辑

题目要求如下:
本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。

输入格式:
输入在一行中给出4个整数,其间以空格分隔。

输出格式:
在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后一位。

输入样例:
1 2 3 4
输出样例:
Sum = 10; Average = 2.5

互联网的广大朋友们,帮我看看这段代码问题错误在哪?

#include <stdio.h>

int main(void)
{
        int a,b,c,d;
        scanf("%d",&a);
        scanf("%d",&b);
        scanf("%d",&c);
        scanf("%d",&d);
        
    int Sum;
    double Average;
   
    Sum=a+b+c+d;
    Average=Sum*0.25;
   
    printf("Sun=%d;Average=%.1f\n",Sum,Average);
   
    return 0;
}

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

使用道具 举报

 楼主| 发表于 2022-4-9 20:27:20 | 显示全部楼层
本帖最后由 葳蕤银河 于 2022-4-9 20:28 编辑

题目要求如下:

本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。

输入格式:
输入在一行中给出4个整数,其间以空格分隔。

输出格式:
在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后一位。

输入样例:
1 2 3 4
输出样例:
Sum = 10; Average = 2.5
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-9 20:36:37 | 显示全部楼层
$ cat main.c
 #include <stdio.h>

int main(void)
{
        int a,b,c,d;
        scanf("%d",&a);
        scanf("%d",&b);
        scanf("%d",&c);
        scanf("%d",&d);

    int Sum;
    double Average;

    Sum=a+b+c+d;
    Average=Sum*0.25;

    printf("Sun=%d;Average=%.1f\n",Sum,Average);

    return 0;
}
$ gcc -g -Wall -o main main.c
$ ./main
1 2 3 4
Sun=10;Average=2.5
$
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-9 22:48:23 From FishC Mobile | 显示全部楼层
好像没错误吧,结果正确啊。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-10 06:28:57 | 显示全部楼层
本帖最后由 jhq999 于 2022-4-10 06:30 编辑
printf("Sun=%d;Average=%.1lf\n",Sum,Average);//double
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-10 13:57:17 | 显示全部楼层
题目保证输入与输出均在整型范围内
#include <stdio.h>

int main(void)
{
    printf ("求4个整数的和以及平均值;请输入4个整数(取值范围:-2147483648~2147483647),整数之间用空格隔开:\n");
    int a = 0, b = 0, c = 0, d = 0;
    int Sum = 0;
    double Average = 0.0;
    scanf("%d", &a);
    scanf("%d", &b);
    scanf("%d", &c);
    scanf("%d", &d);

    int int_type_size = sizeof (a);
    printf ("%d\n", int_type_size);  //打印int类型所占字节数

    int double_type_size = sizeof (double);
    printf ("%d\n", double_type_size);  //打印double类型所占字节数
   
    //确保输入在整型范围之内,取值范围根据对应数据类型所占字节数计算出来的。可以百度查询
    if (a < -2147483648 || a > 2147483647)
    {
        printf ("输入的第一个数不符合取值范围\n");
        return -1;
    }
    if (b < -2147483648 || b > 2147483647)
    {
        printf ("输入的第二个数不符合取值范围\n");
        return -2;
    }
    if (c < -2147483648 || c > 2147483647)
    {
        printf ("输入的第三个数不符合取值范围\n");
        return -3;
    }
    if (d < -2147483648 || d > 2147483647)
    {
        printf ("输入的第四个数不符合取值范围\n");
        return -4;
    }
   
    //确保输入在整型范围之内或浮点数范围之内,取值范围根据对应数据类型所占字节数计算出来的。可以百度查询
    Sum = a + b + c + d;
    Average = Sum * 0.25;
    if (Sum < -2147483648 || Sum > 2147483647)
    {
        printf("输入的四个数的和不符合取值范围\n");
        return -5;
    }
    if (Average < 1.7E-308 || Average > 1.7E+308)
    {
        printf ("平均值不符合取值范围\n");
        return -6;
    }

    printf("Sun=%d;Average=%.1f\n", Sum, Average);
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-10 21:43:46 | 显示全部楼层
cjgank 发表于 2022-4-10 13:57
题目保证输入与输出均在整型范围内
#include

我当时也认为是取值范围的问题,但是你这个代码运行出来结果也不对。
参考答案是在main上一行加上int fact(int n);但我不懂这是啥意思

参考答案:
#include <stdio.h>


int fact(int n);
int main()
{
    int a,b,c,d,sum;
    double average;
    scanf("%d %d %d %d",&a,&b,&c,&d);
    sum=a+b+c+d;
    average=sum/4.0;
   
    printf("Sum = %d; Average = %.1f",sum,average);
   
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-10 21:57:06 | 显示全部楼层
本帖最后由 cjgank 于 2022-4-10 21:58 编辑
葳蕤银河 发表于 2022-4-10 21:43
我当时也认为是取值范围的问题,但是你这个代码运行出来结果也不对。
参考答案是在main上一行加上int fa ...


1. int fact (int n);  //这是一条函数声明语句。
    函数的定义部分和调用部分没有。那么这一条语句就是多余的。
2. 书本上的标准答案并非就是正确的。程序唯有实践出真知。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-10-5 18:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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