| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 696 人关注过本帖
标题:输出四个数中最小的那个,看下哪里错了。谢谢!!
只看楼主 加入收藏
a250295815
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2010-10-1
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:6 
输出四个数中最小的那个,看下哪里错了。谢谢!!
#include<stdio.h>
int main ()
{
int a,b,c,d,min;
scanf("%d%d%d%d",&a,&b,&c,&d);
min=a;
if(a>b)
min=b;
if(min>c)
min=c;
if(min>d)
min=d;
printf("%d\n",min);
return 0;
}
搜索更多相关主题的帖子: 输出 
2010-10-22 19:50
a250295815
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2010-10-1
收藏
得分:0 
#include<stdio.h>
int main ()
{
int a,b,c,d,t;
scanf("%d%d%d%d",&a,&b,&c,&d);
if(a>b)
{
    t=a;
    a=b;
    b=t;
}
if(a>c)
{
    t=a;
    a=c;
    c=t;
}
if(a>d)
{
    t=a;
    a=d;
    d=t;
}
if(b>c)
{
    t=b;
    b=c;
    c=t;
}

if(b>d)
{
    t=b;
    b=d;
    d=t;
}

if(c>d)
{
    t=c;
    c=d;
    d=t;
}
printf("%d\n%d\n%d\n%d\n",a,b,c,d);
return 0;
}


哪里错了!
2010-10-22 20:03
long361800
Rank: 2
等 级:论坛游民
帖 子:33
专家分:37
注 册:2010-8-23
收藏
得分:5 
你的程序问题可大了啊,我帮你写了一个,你试试,好用就行........
代码:
#include<stdio.h>
void main ()
{
int aa[4],min;
int i;
for(i=0;i<4;i++)
scanf("%d",&aa[i]);
min=aa[0];
for(i=0;i<3;i++)
{
 if(aa[i]>aa[i+1])
 min=aa[i+1];
 else aa[i+1]=min;
}
printf("%d",min);
getch( );
}
2010-10-22 20:30
long361800
Rank: 2
等 级:论坛游民
帖 子:33
专家分:37
注 册:2010-8-23
收藏
得分:5 
不知道你学了数组没有??
2010-10-22 20:35
a250295815
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2010-10-1
收藏
得分:0 
没有哦。刚刚学的菜鸟
2010-10-22 20:41
逐渐学习
Rank: 6Rank: 6
等 级:侠之大者
帖 子:113
专家分:454
注 册:2010-9-26
收藏
得分:5 
#include <stdio.h>
int main()
{
  int a,b,c,d,min;

  scanf("%d%d%d%d",&a,&b,&c,&d);
  //使用条件运算
  min=((a<b?a:b)<(c<d?c:d))?(a<b?a:b):(c<d?c:d);
  printf("%d\n",min);
  return 0;
}不知道能看懂吗

帮人《---》帮己
2010-10-23 09:49
HI质
Rank: 1
等 级:新手上路
帖 子:1
专家分:5
注 册:2010-10-22
收藏
得分:5 
回复 楼主 a250295815
你第一段代码没看出问题,我也自己成功运行了。不知道你说的问题是什么,如果是看不到结果,可以加个sleep
第二段你是想做排序吧,冒泡法。想法是对的,但是你每次比较后,都有两个比较变量的重新赋值,所以你的语句看上去是abcd两两做了比较,而其实四个数值并没有两两比较。改成下面的
if(a>b)
{
    t=a;
    a=b;
    b=t;
}
if(b>c)
{
    t=b;
    b=c;
    c=t;
}
if(c>d)
{
    t=c;
    c=d;
    d=t;         
}              //这样一轮后,d变成了四个中最大的

if(a>b)
{
    t=a;
    a=b;
    b=t;
}
if(b>c)
{
    t=b;
    b=c;
    c=t;
}         //这样一轮后c变成了第二大的数
if(a>b)
{
    t=a;
    a=b;
    b=t;
}         //这样一轮后b变成了第三大的数
这样完整的代码就是四个数的从小到大的顺序排列
2010-10-23 14:26
快速回复:输出四个数中最小的那个,看下哪里错了。谢谢!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016444 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved