xyyyo 2023-03-02 17:25 采纳率: 45.5%
浏览 36

c语言简单问题,请大家解答

题目:

img

我的代码:


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

int main()
{
    int num[50];
    int i;
    for (i = 0; i < 50; i++)
    {
        scanf_s("%d", num[i]);
    }
    int len = sizeof(num);
    int A1=0,A2=0,A3=0,A5=0;
    int sum = 0,number=0;
    float A4 = 0;
    for (i = 0; i < len; i++)
    {
        if (num[i] % 5 == 0)
        {
            if (num[i] % 2 == 0)
                A1 += num[i];
        }
        if (num[i] % 5 == 1)
        {
            int result=pow(-1, i);
            A2 += result;
        }
        if (num[i] % 5 == 2)
            A3++;
        if (num[i] % 5 == 3)
        {
            number++;
            sum += num[i];
        }
        if (num[i] % 5 == 4)
        {
            if (num[i] > A5)
            {
                A5 = num[i];
            }
        }
    }
    A4 = sum / number;
    printf("%d %d %d %0.1f %d", A1, A2, A3, A4, A5);
    return 0;
}

先不管N的问题 在我输入例子中的值的情况下 为啥不能正常输出呢?


#include <stdio.h>

int main()
{
    int num[50];
    int i;
    int len = sizeof(num) / sizeof(num[0]);
    for (i = 0; i < len; i++)
    {
        scanf_s("%d", &num[i]);
    }
    
    int A1=0,A2=0,A3=0,A5=0;
    int number=0;
    float sum = 0;
    float A4 = 0;
    int count = 0;
    for (i = 0; i < len; i++)
    {
        if (num[i] % 5 == 0)
        {
            if (num[i] % 2 == 0)
                A1 += num[i];
        }
        if (num[i] % 5 == 1)
        {
            count++;
            if (count % 2 == 0) {
                A2 -= num[i];
            }
            else {
                A2 += num[i];
            }

        }
        if (num[i] % 5 == 2)
            A3++;
        if (num[i] % 5 == 3)
        {
            number++;
            sum += num[i];
        }
        if (num[i] % 5 == 4)
        {
            if (num[i] > A5)
            {
                A5 = num[i];
            }
        }
    }
    A4 = sum / number;
    printf("%d %d %d %0.1f %d", A1, A2, A3, A4, A5);
    return 0;
}

经各位指出的错误修改后的代码如下,但还是不能正确输出

  • 写回答

4条回答 默认 最新

  • 元气少女缘结神 2023-03-02 17:48
    关注

    13行错了那表示字节数并不是元素个数,改成int len = sizeof(num)/sizeof(num[0]);

    评论 编辑记录

报告相同问题?

问题事件

  • 修改了问题 3月2日
  • 创建了问题 3月2日

悬赏问题

  • ¥15 nginx中的CORS策略应该如何配置
  • ¥30 信号与系统实验:采样定理分析
  • ¥100 我想找人帮我写Python 的股票分析代码,有意请加mathtao
  • ¥20 Vite 打包的 Vue3 组件库,图标无法显示
  • ¥15 php 同步电商平台多个店铺增量订单和订单状态
  • ¥15 关于logstash转发日志时发生的部分内容丢失问题
  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题