| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1935 人关注过本帖
标题:对变量a,b,c赋值,并由小到大排序
只看楼主 加入收藏
互助啊
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-3-28
收藏
 问题点数:0 回复次数:9 
对变量a,b,c赋值,并由小到大排序
初学者需要帮忙.......
搜索更多相关主题的帖子: 赋值 变量 由小到大 
2008-03-29 10:30
duxinjun123
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-7-6
收藏
得分:0 
我试试
我是菜鸟,有错请指正,没有上机试,仅供参考
void order(float x,float y,float z)
{ float temp;
if(x>y)
  {temp=x;x=y;y=temp;}
if(x>z)
  {temp=x;x=z;z=temp;}
if(y>z)
  {temp=x;x=z;z=temp;}
printf("The order is: %f %f %f\n",x,y,z);
}
main()
{float a,b,c;
 printf("please input a,b,c:\n");
 scanf("%f,%f,%f",&a,&b,&c);
 order(a,b,c);
 }
2008-03-29 10:52
tttlixio
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-2-18
收藏
得分:0 
为什么会有"order"??
2008-03-29 11:43
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
用指针比较好
程序代码:
/*
WIN-TC下测试正常。
*/
#include<stdio.h>
void zh(int *x,int *y)
{       
        int a;
        if(*x>*y)
        {
                a=*x;
                *x=*y;
                *y=a;
        }
}
int main(void)
{
        int a,b,c;
        printf("请输入三个整数,空格格开,enter结束输入:\n");
        scanf("%d %d %d",&a,&b,&c);
        printf("\n您输入的三个数为:%d,%d,%d\n",a,b,c);
        if(a>b)
                zh(&a,&b);
        if(a>c)
                zh(&a,&c);
        if(b>c)
                zh(&b,&c);
        printf("转换后为:%d,%d,%d\n",a,b,c);


        getch();
}
        
2008-03-29 12:26
lnhaing
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2008-1-30
收藏
得分:0 
^_^^_^^_^^_^^_^^_^^_^^_^

我来自偶然! bitter C
2008-03-29 12:27
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
回复 3# 的帖子
order是他写的程序中的一个函数名,他用函数实现转换并输出。



2#
您在传递值的时候,少用了&,应当为:order(&a,&b,&c);

[[it] 本帖最后由 广陵绝唱 于 2008-3-29 12:31 编辑 [/it]]
2008-03-29 12:29
duxinjun123
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-7-6
收藏
得分:0 
我觉得order(a,b,c)没错呀,在函数定义时,行参就是float型的三个变量,在引用order 函数时直接用a,b,c应该没问题呀,不过我没有上机测试,要是您方便上机测试一下吧,不管对错我都谢谢您指教了!
2008-03-29 15:15
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
回复 7# 的帖子
呵呵,对不起,是我弄错了,子函数非指针,传递时不用&。

不过您的子函数中的最后一个if中,变量用错了,改过来就好了。

嘻嘻,共同进步。
2008-03-29 18:59
thepastboy
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-8-16
收藏
得分:0 
#include <stdio.h>
void order(float x,float y,float z)
{
 float temp;
 if(x>y)
 {temp=x;x=y;y=temp;}
 if(x>z)
 {temp=x;x=z;z=temp;}
 if(y>z)
 {temp=y;y=z;z=temp;}
 printf("The order is:%f,%f,%f\n",x,y,z);
}
main()
{ float a,b,c;
  printf("Please input a,b,c:\n");
  scanf("%f,%f,%f",&a,&b,&c);
  order(a,b,c);
}

2008-03-29 19:45
duxinjun123
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-7-6
收藏
得分:0 
回复 8# 的帖子
就是啊,我太不认真了,呵呵谢谢指点
2008-04-03 08:35
快速回复:对变量a,b,c赋值,并由小到大排序
数据加载中...
 
   



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

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