盐汽水霉 2024-04-07 22:11 采纳率: 100%
浏览 2
已结题

代码好像没什么问题 但是运行输出的值不对 c语言

代码好像没什么问题 但是运行输出的值不对 c语言 代码好像没什么问题 但是运行输出的值不对 c语言看看

img

  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-07 22:12
    关注

    引自免费微信小程序:皆我百晓生

    好的,让我帮你解决这个问题。

    首先,我们需要知道的是,C语言中的while循环和for循环的条件都必须是真才有效,否则程序将不会执行。

    此外,我们需要找到一个算法来计算数组中所有偶数的平均值,并且每次循环时都在a[i]sum/5之间查找平均值的位置,直到找到为止。

    以下是完整的代码:

    #include <stdio.h>
    #include <stdlib.h>
    
    void find_average(int *arr, int n)
    {
        for (int i = 0; i < n; ++i)
        {
            for (int j = 0; j < 5; ++j)
            {
                if ((i + j) % 5 == 0)
                    printf("%d ", arr[i]);
            }
            printf("\n");
        }
    }
    
    int main()
    {
        int *arr = malloc(sizeof(int) * 30);
        for (int i = 0; i <= 29; i++)
        {
            arr[i] = i + 2;
        }
    
        // 使用一个临时变量保存原始数组的长度
        int n = sizeof(arr) / sizeof(arr[0]);
    
        find_average(arr, n);
    
        return 0;
    }
    

    在这个程序中,我们首先分配了一个大小为30的整数数组,然后遍历这个数组的所有元素。对于每个元素,我们计算它的位置(也就是它的索引),并在打印出元素的同时,向右移动5个字符,以确保我们在每个循环的末尾都有一个均匀的余数。

    注意,这段代码假设数组的第一个元素已经被正确地初始化了。如果数组没有被初始化,那么我们需要先给它赋值。

    另外,这个程序在处理完所有元素后才会返回。如果你想要立即结束,你可以在循环结束后添加一些代码来检查输出是否已经完全完成。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月15日
  • 已采纳回答 4月7日
  • 创建了问题 4月7日

悬赏问题

  • ¥15 统计大规模图中的完全子图问题
  • ¥15 使用LM2596制作降压电路,一个能运行,一个不能
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路
  • ¥15 经gamit解算的cors站数据再经globk网平差得到的坐标做形变分析
  • ¥15 phython读取excel表格报错 ^7个 SyntaxError: invalid syntax 语句报错
  • ¥20 @microsoft/fetch-event-source 流式响应问题
  • ¥15 ogg dd trandata 报错
  • ¥15 高缺失率数据如何选择填充方式