2021-01-02 16:37 采纳率: 100%
浏览 6
已采纳

C语言作业输出最小值,帮我看看哪里写错了

#include <stdio.h>
#include <stdlib.h>

int main()
{   int n,i,j,k,a;
    for(i=0;i<10;i++)
    {
        scanf("%d",&n);
        for(j=0;j<9;j++)
        {
            if(n<k)
            {
                a=n;
                n=k;
                k=a;
            }
        }
    }
    printf("%d",k);
    return 0;
}
 

  • 写回答

1条回答 默认 最新

  • wang_hs2002 2021-01-02 19:52
    关注

    程序有2个主要问题:
    1、变量K没有赋储值,就用于比较,有很大不确定性;建议赋一个比较大的值k=65532;

    2、第二个for循环,没有意义。从程序里看,只是判断了9次n和k的值;

    修改后的程序如下:

    #include <stdio.h>
    #include <stdlib.h>

    int main()
    {   int n,i,j,k=999,a;
        for(i=0;i<10;i++)
        {
            scanf("%d",&n);
            //k用于存储最小值
            if(n<k)  //n比k还小,则交换
            {
                a=n;
                n=k;
                k=a;
            }
        }
        printf("%d",k);
        return 0;
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 有偿,谁有移远的EC200S固件和最新的Qflsh工具。
  • ¥15 找一个QT页面+目标识别(行人检测)的开源项目
  • ¥15 有没有整苹果智能分拣线上图像数据
  • ¥20 有没有人会这个东西的
  • ¥15 cfx考虑调整“enforce system memory limit”参数的设置
  • ¥30 航迹分离,航迹增强,误差分析
  • ¥15 Chrome Manifest扩展引用Ajax-hook库拦截请求失败
  • ¥15 用Ros中的Topic通讯方式控制小乌龟的速度,走矩形;编写订阅器代码
  • ¥15 LLM accuracy检测
  • ¥15 pycharm添加远程解释器报错