当前位置: 代码迷 >> C语言 >> 问会C的人一个问题
  详细解决方案

问会C的人一个问题

热度:123   发布时间:2006-10-20 13:20:09.0

8楼的应该是 void main()把


----------------解决方案--------------------------------------------------------


----------------解决方案--------------------------------------------------------

三个数字就设定一个临时的变量,让数字两两比较,大的方到临时的变量里,最后在输出就行了。9楼的代码应该看得懂。


----------------解决方案--------------------------------------------------------

大概的明白了。。我自己再专研专研吧。。谢谢各位了。


----------------解决方案--------------------------------------------------------

#include<stdio.h>
void swap(int *p,int *q)
{
int z;
z=*p;

*p=*q;
*q=z;
}
exchange(int *p1,int*p2,int *p3)
{
if(*p1<*p2)swap(p1,p2);
if(*p2<*p3)swap(p2,p3);
if(*p1<*p3)swap(p1,p3);
}
main()
{
int a,b,c;
int *p1,*p2,*p3;
printf("please input a,b,c:\n");
scanf("%d%d%d",&a,&b,&c);
p1=&a,p2=&b,p3=&c;

exchange(p1,p2,p3);
printf("%d %d %d",a,b,c);
getch();
}
我觉得现在比较清楚一点吧


----------------解决方案--------------------------------------------------------
以下是引用guoxhvip在2006-10-19 23:05:28的发言:

改用指针与函数
#include<stdio.h>
void num(int *a,int *b,int *c)
{
int temp;
if(*a>*b)
{
temp=*a;
*a=*b;
*b=temp;
}
if(*a>*c)
{
temp=*a;
*a=*c;
*c=temp;
}
if(*b>*c)
{
temp=*b;
*b=*c;
*c=temp;
}
}
int main()
{
int A,B,C;
printf("请输入三个数:");
scanf("%d%d%d",&A,&B,&C);
num(&A,&B,&C);
printf("由小到大的顺序为:%d %d %d\n",A,B,C);
return 0;
}


----------------解决方案--------------------------------------------------------

  相关解决方案