瑞星卡卡安全论坛技术交流区系统软件 【求助】请教高手,用C语言编一程序,从5个整数中找出最小的数,并显示此数

1   1  /  1  页   跳转

【求助】请教高手,用C语言编一程序,从5个整数中找出最小的数,并显示此数

【求助】请教高手,用C语言编一程序,从5个整数中找出最小的数,并显示此数

这个便题是谭浩强的C第一章的课后习题,学完了第一章,想拿来练练手.
但是想不出算法来,所以想请大家给个思路,或者用什么方法比较好做就行...
最后编辑2007-06-20 20:10:29.093000000
分享到:
gototop
 


风的唏嘘 谢谢你了,
不过我还是有点疑问..
两两比较的时候是用if...else吧,相邻的两数互相比较就可以算出来了吗?
冒泡法和选择法我并不懂,你能否再帮我解释一下,或者举个例了说明一下..
gototop
 

引用:
【过客2007的贴子】main()
{
  int a,b,c,d,e,s;
  printf("shu lu wu ge zi fu");
  scanf("%d%d%d%d%d",&a,&b,&c,&d,&e);
  if(a>b)
  s=b;
  if(a>c)
  s=c;
  if(a>d)
  s=d;
  if(a>e)
  s=e;
  printf("%d",s);
 

}

改进

main()
{
  int a,b,c,d,e,s;
  printf("shu lu wu ge zi fu\n");
  scanf("%d%d%d%d%d",&a,&b,&c,&d,&e);
  s=a;
  if(s>b)
  s=b;
  if(s>c)
  s=c;
  if(s>d)
  s=d;
  if(s>e)
  s=e;
  printf("%d",s);
 

}
………………

谢谢了,我刚才编译过,是正确的,但我不明白,为什么要让S先等于A,是什么意思啊..
gototop
 

引用:
【风的唏嘘的贴子】【回复“过客2007”的帖子】你的程序确实可以得到一个最小值,但是这样一来其他几个原有数据会被破坏掉,一般不建议这样做,而应该设一个临时变量用来进行数据交换,如果仅仅为了得到一个最小值而不考虑其他的话这样也行
………………

想问一下,临时变量怎么用呢?能举个例子说明一下吗???谢谢了
gototop
 

过各客2007..刚才仿照你写的程序,我又改编了一下.程序是这样的.
#include "stdio.h"
main()
{
  int a,b,c,d,e,s;
  printf("please input 5 numbers:\n");
  scanf("%d%d%d%d%d",&a,&b,&c,&d,&e);
  if(s>a)
    s=a;
  if(s>b)
    s=b;
  if(s>c)
    s=c;
  if(s>d)
    s=d;
  if(s>e)
    s=e;
  printf("%d\n",s);
}
直接用S去比较5个数的大小,然后再输入出最小的数..
gototop
 
1   1  /  1  页   跳转
页面顶部
Powered by Discuz!NT