永发信息网

这个C语言的问题在哪里 麻烦解释下

答案:2  悬赏:70  手机版
解决时间 2021-04-15 21:38
  • 提问者网友:箛茗
  • 2021-04-15 10:09

#include "stdio.h"
#include "conio.h"
void int pp(int *a,*b,*c)
{
int temp
if(*a>*b)
{
temp=*a;
*a=*b;
*b=temp;
}
if(*b>*c)
{
temp=*b;
*b=*c;
*c=temp;
}
if(*a>*c)
{
temp=*a;
*a=*c;
*c=temp;
}
}
main()
{
int x,y,z;
int *p=&x,*q=&y,*s=&z;
scanf("%d%d%d",&x,&y,&z);
pp(p,q,s);
printf("%d %d %d",x,y,z);
getch();
}

最佳答案
  • 五星知识达人网友:躲不过心动
  • 2021-04-15 10:16
#include "stdio.h"
#include "conio.h"



int pp(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;
}
}
main()
{
int x,y,z;
int *p=&x,*q=&y,*s=&z;
scanf("%d%d%d",&x,&y,&z);
pp(p,q,s);
printf("%d %d %d",x,y,z);
getch();
}
全部回答
  • 1楼网友:你哪知我潦倒为你
  • 2021-04-15 11:38

void int pp(int *a,*b,*c) 这里,声明的应该不返回任何值 void pp(int*a,int*b,int*c)

int temp if(*a>*b)这里少了个;,应该是 int temp;if(*a>*b) scanf("%d%d%d",&x,&y,&z);应该是scanf("%d,%d,%d",&x,&y,&z);

如果你是要实现按从小到大排列的话,最后一个条件语句if(*a>*c)不太对,应该改成if(*a>*b)因为这时c已经是最大了,比较它没有意义,把第一个条件语句再执行一遍就好了。

#include "stdio.h" #include "conio.h" void pp(int *a,int*b,int*c) { int temp; if(*a>*b) { temp=*a; *a=*b; *b=temp; } if(*b>*c) { temp=*b; *b=*c; *c=temp; } if(*a>*b) { temp=*a; *a=*b; *b=temp; } } main() { int x,y,z; int *p=&x,*q=&y,*s=&z; scanf("%d,%d,%d",&x,&y,&z); pp(p,q,s); printf("%d %d %d",x,y,z); getch(); } 

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯