c语言5个数字求最大值和最小值,C-输入5个数字,然后输出最大值和最小值

C-输入5个数字,然后输出最大值和最小值

#include

#include

int main ()

{

int a[5],max,min,i;

//开始输入 将五个数字循环输入到数字a中

for(i=0;i<5;i++)

{

scanf_s("%d",a[i]);

}

//将用户输入的的第一个数字都先赋值给max和min

max=a[0];

min=a[0];

//重点:

//进行判断最大值和最小值的循环

for(i=1;i<5;i++)

{

//循环找出数组里面的最大值 max实际上a[0]

if(max

{

max=a[i];

}

if(min>a[i])

{

min=a[i];

}

}

printf("max=%d min=%d", max, min);

system("pause");

return 0;

}

这个是萌码网站上面的一道题目,刚开始想了一会没想出来,就花50积分看的答案,结果发现用到了数组...没看答案之前我在想怎么可以不用数组就能做出来这道题目呢?要循环输入5个数字 我竟然没有想得到数组,也是数组这方面我刚接触..下面的尝试下能不能不用数组就做出来 我觉得应该是可以的

不用数组的情况下 算法还是一样 一个一个数的比较 前一个数和另一个数的比较 难就难在怎么实现

#include

#include

int main()

{

//x是用来存储用户输入的每个数字,max为最大值,min为最小值,i是计数变量

int x,x_2,max, min, i;

x = 0;

x_2 = 0;

//开始输入 第一个数字 不能放到循环里面 因为还要把第一个数字赋值给max和min不然max和min怎么和用户输入的数字进行比较

scanf_s("%d",&x);

//输入的第一个数赋给min和max用来和第二个数字比较 算法就是 第一个和下一个比较 一直到最后一个 把最大的留下 或者最小的留下

min = x;

max = x;

//输入剩下4个数字

for (i = 1; i <= 4; i++)

{

scanf_s("%d",&x_2); //输入的值赋给x_2变量

if (max < x_2) //相当于a[0]和a[1]比较 第一个数和第二个数比较 若max比x_2就默认不变 相反就把x_2赋值给max

{

max = x_2;

}

if (min>x_2)//同上 如果min比x_2小就默认不变,相反就把小的x_2的值赋给min

{

min = x_2;

}

}

printf("max=%d min=%d", max, min);

system("pause");

return 0;

} 总结: 我就是太笨了 而且很难集中注意力 刚才想的事情 突然就忘记了 忘的很干净 想题目的话 这样很折磨的 想题 想着想着忘记了 还要重新来 以后忘记了就不重新来了 接着想 这样做很难 不过 能锻炼下自己集中注意力 多锻炼 !

  • 9
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值