寻求C语言程序帮助,输入3个数,分别求最大者,最小和中间的数~

a>b?(a<c?a:(b>c?b:c)):(b<c?b:(a>c?a:c))
这个是我自己想出来的比较方法,用来求3个数中,排在中间的数,也不知道对不对~由于脑苯 所以想了半天才想到上面的那种方法如果出错了希望高手也不要见笑~~请详细的指出错误 和修改结果 回答好的我会加分的~~~~~

1、
main()
{float x,y,z,m;
scanf("%f,%f,%f",&x,&y,&z);
if(x>y&&x>z) m=x;
if(y>x&&y>z) m=y;
if(z>x&&z>y) m=z;
printf("%f",m);
}

2、
main()
{float x,y,z,m;
scanf("%f,%f,%f",&x,&y,&z);
m=x>y?x:y;
m=m>z?m:z;
printf("%f",m);
}

3、
main()
{float x,y,z,m;
scanf("%f,%f,%f",&x,&y,&z);
m=x>y?x:y;
printf("Max is %f",m=m>z?m:z);
}

4、main()
{
float a,b,c;

float m,max;
scanf("%f,%f,%f",&a,&b,&c);
max=a>(m=b>c?b:c)?a:m;
printf("the biggest number is:%f",max);
}

5、
float max(float x,float y)
{float m;
m=x>y?x:y;
return(m);
}
main()
{float x,y,z,m;
scanf("%f,%f,%f",&x,&y,&z);
m=max(z,max(x,y));
printf("Max is %f\n",m);
}

6、

sort(float b[3])
{
int i,k;
float t;
k=0;
for(i=1;i<3;i++)
{
if(b[i]>b[k])
k=i;
}
t=b[k];
b[k]=b[0];
b[0]=t;
}
main()
{
float a[3];
int i;
printf("enter the array:\n");
for(i=0;i<=2;i++)
scanf("%f",&a[i]);
sort(a);
printf("the biggest number is:\n%5.2f",a[0]);
}

7、

swap(int *pt1,int *pt2)
{int temp;
temp=*pt1;
*pt1=*pt2;
*pt2=temp;
}
main()
{
int a,b,c,*p1,*p2,*p3;
scanf("%d,%d,%d",&a,&b,&c);
p1=&a;p2=&b;p3=&c;
if(*p1>*p2) swap(p1,p2);
if(*p1>*p3) swap(p1,p3);
if(*p2>*p3) swap(p2,p3);
printf("\nmax=%d\n",c);
}

8、
main()
{int a,b,c,max;
scanf("%d,%d,%d",&a,&b,&c);
max=a;
if(max<b)
max=b;
if(max<c)
max=c;
printf("max=%d",max);
}

9、
main()
{
int a,b,c,t;
scanf("%d,%d,%d",&a,&b,&c);
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
{t=a;a=c;c=t;}
if(b>c)
{t=b;b=c;c=t;}
printf("max=%d",c);
}

10、
main()
{int a[4];
int i,t;
printf("3 number:\n");
for(i=1;i<4;i++)
scanf("%d",&a[i]);
printf("\n");
for(i=1;i<3;i++)
if(a[i]>a[i+1])
{t=a[i+1];a[i+1]=a[i];a[i]=t;}
printf("the sorted number :\n");
printf("%d",a[3]);
}

11、
main()
{
int score(int x[],int n);
int a[3],i;
for(i=0;i<3;i++)
scanf("%d",&a[i]);
score(a,3);
}
int score(int x[],int n)
{
int i,*max;
max=x;
for(i=1;i<n;i++)
if(*max<x[i])
*max=x[i];
printf("\n%d\n",*max);
}

12、
int Max;
main()
{
int high(int,int,int);
int top(int p,int q);
int a,b,c;
scanf("%d,%d,%d",&a,&b,&c);
high(a,b,c);
printf("%d\n",Max);
}
int top(int p,int q)
{
Max=p>q?p:q;
}
int high(int x,int y,int z)
{
if(x<y)
top(y,z);
if(y<x)
top(x,z);
}

13、
main()
{
int max(int *q,int x[3]);
int *p,a[3],i;
p=a;
for(i=0;i<3;i++)
scanf("%d",p++);
p=a;
max(p,a);
printf("\n%d\n",*p);
}
int max(int *q,int x[3])
{
int i;
q=x;
for(i=1;i<3;i++)
*q=*q>*(x+i)?*q:*(x+i);
}

14、15
main()
{
int a,b,c,d;
scanf("%d%d%d",&a,&b,&c);
d=max(a,b,c);
printf("Max is %d",d);
}
max(int x,int y,int z)
{
int m;
/* if(x>y)
{m=x;x=y;y=m;}
if(y>z)
{m=y;y=z;z=m;}
if(x>z)
{m=x;x=z;z=m;}
return(z);
}*/
m=x>y? x:y;
m=m>z? m:z;
return(m);
}

16、
main()
{
int a,b,c,d,temp;
scanf("%d%d%d",&a,&b,&c);
temp=a>b? a:b;
if(temp>c) printf("%d",temp);
else printf("%d",c);
}
这是我和同学们整理的三个数求最大值得方法
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-01-28
#include"stdio.h"
void main()
{
int a,b,c;
printf("input 3 words\n");
scanf("%d%d%d",&a,&b,&c);
if(a>b&&b>c)
printf("the big is %d,the mid is %d,the small is %d\n",a,b,c);
if(a>c&&c>b)
printf("the big is %d,the mid is %d,the small is %d\n",a,c,b);
if(b>a&&a>c)
printf("the big is %d,the mid is %d,the small is %d\n",b,a,c);
if(b>c&&c>a)
printf("the big is %d,the mid is %d,the small is %d\n",b,c,a);
if(c>b&&b>a)
printf("the big is %d,the mid is %d,the small is %d\n",c,b,a);
if(c>a&&a>b)
printf("the big is %d,the mid is %d,the small is %d\n",c,a,b);
}

我不太习惯用?:语句,不好意思啊。。。
第2个回答  2008-01-29
用大小排队的方法,输出 大,小,中:

#include <stdio.h>
#include <stdlib.h>

void main()
{
int a[3];
int i,j,k;

printf("input 3 values\n");
scanf("%d %d %d",&a[0],&a[1],&a[2]);

// 标准的排队算法
for (i=0;i< 2;i++)
for (j=i+1;j<3;j++){
if (a[j] > a[i] ) {k = a[j]; a[j]=a[i];a[i]=k;};
}

printf("%d %d %d ",a[0],a[2],a[1]);
}
第3个回答  2008-01-28
#define MAX(a,b) (a>b?a:b)
#define MIN(a,b) (a<b?a:b)
int main(){
int a,b,c,max,mid;
scanf("%d%d%d",&a,&b,&c);
max=MAX(c,MAX(a,b));
min=MIN(c,MIN(a,b));
}
第4个回答  2008-01-29
在求三个数谁最大,谁最小的问题时,没有你a>b?(a<c?a:(b>c?b:c)):(b<c?b:(a>c?a:c)) 表示的,应为这里面有一个优先级别的问题!计算机会无法识别你的意思!做简单的方法是交换法,程序就如上边写的

寻求C语言程序帮助,输入3个数,分别求最大者,最小和中间的数~
main(){float x,y,z,m;scanf("%f,%f,%f",&x,&y,&z);m=x>y?x:y;printf("Max is %f",m=m>z?m:z);} 4、main(){ float a,b,c;float m,max;scanf("%f,%f,%f",&a,&b,&c);max=a>(m=b>c?b:c)?a:m;printf("the biggest number is:%f",max);} 5、float max(...

,编辑C语言程序。从键盘输入三个数,求这个整数中的最大值和最小值
int min(int a,int b,int c);void main(){ int x,y,z;printf("请输入三个数(用空格隔开):");scanf("%d%d%d",&x,&y,&z);printf("三个数选出最大数是%d\\n",max(x,y,z));printf("三个数选出最小数是%d\\n",min(x,y,z));} int max(int a,int b,int c){ if (a>...

怎么用C语言编写一个程序,输入三个数值,然后输出其中最大者。
printf("输入第三个数:");scanf("%d",&c);if(a<b) \/\/比较前两个数,如果第二个数大,就把第一个数换走,否则不换 a=b; \/\/此时第一个数是最大的 if(a<c) \/\/比较第一个数与最后一个数,如果最后一个数大,就把第一个数换走,否则不换 a=c; \/\/此时第一个数是最大...

c语言程序题:从键盘上任输入三个实数,求出最大数和最小数的和值,
include<stdio.h> main(){ float a,b,c,max,min,sum,average;printf("请输入三个实数,以空格隔开");scanf("%f %f %f",&a,&b,&c);max=a;min=a;if(b>max) max=b;if(b<min) min=b;if(c>max) max=c;if(c<min) min=c;sum=min+max;average=sum\/2;printf("和值为%f\\n",...

用c语言编写程序,从键盘输入三个整数,求这三个整数的最大值和最小...
"%d",&n);max=min=n;for(num=1; num<N;num++){ scanf("%d",&n);if(max<n) max=n;if(min>n) min=n;} printf("max=%d,min=%d\\n",max,min);getch();} 就是刚才帮你的那个人~上面 #define N 10 只要修改数字想在多少个数里面找最大最小都可以!!

怎么用C语言编写一个程序,输入三个数值,然后输出其中最大者。
else _max = c; } printf("Max: %d\\n", _max); return 0;}用qsort函数可以快速排序,算法如下:include <stdio.h>#include <stdlib.h>int cmp(const void * a, const void * b){ return(*(int *) a - *(int *) b);}int main(void){ int a[4]; for...

怎样用C语言编写这样一个程序:输入三个整数,求其中的最大值?
include<stdio.h> include<stdlib.h> int x,y,z;int max;int main(void){ printf("请输入三个整数:\\n");scanf("%d%d%d",&x,&y,&z);if(x>y)max=x;else max=y;if(max>z);else max=z;printf("最大值为%d",max);system("pause");} ...

编写一个C程序,输入abc三个值,输出其中最大者
\/\/编写一个程序,输入a,b,c三个值,输出其中最大者 include<stdio.h> int main(){ int a,b,c,max; \/\/定义四个整型数 printf("请输入三个数:");scanf("%d,%d,%d",&a,&b,&c);max=a;if (max<b){ max=b;} if (max<c){ max=c;} printf("%d\\n",max);return 0;...

C语言程序,输入3个数,求最大者.
int a,b,c,d;scanf("%d%d%d",&a,&b,&c); \/\/scanf%d间不能有逗号,后面是输入的地址因此得加& d=max(a,b,c); \/\/输入的是abc,不是x,y,z\/\/x,y,z是形参a,b,c是实参 printf("max=%d",d);\/\/不是print是printf } int max(int x,int y,int z){ return(x>y?(x>z?x:z...

...编写一个C程序,输入3个值,选出最大者?{各位帮帮忙啊,很着急的,拜托...
include<stdio.h> void main(){ int i,a[3],temp;printf("请输入3个数:\\n");for(i=0;i<3;i++){ scanf("%d",&a[i]);} for(i=0;i<2;i++){ if(a[i]>a[i+1]){ temp=a[i];a[i]=a[i+1];a[i+1]=temp;} } printf("最大值为:%d\\n",a[i]);} ...

相似回答