习题3-1 比较大小 (10分)
本题要求将输入的任意3个整数从小到大输出
inpu t输入在一行中给出3个整数,其间以空格分隔。
output 输入在一行中给出3个整数,其间以空格分隔。
#include<stdio.h> #define max(a,b) (a>b?a:b)//取最大值 #define min(a,b) (a<b?a:b)//比较两个数的大小然后取出其中的最小值 int maxlist(int a,int b,int c)//最大值的函数 { return max(max(a,b),c); } int minlist(int a,int b,int c)//最小值的函数 { return min(min(a,b),c); } int main() { int min; int max; int mid=0; int a[3]={0}; int i=0; scanf("%d %d %d",&a[0],&a[1],&a[2]); if(a[0]==a[1]&&a[0]==a[2]) //判断输入的三个数是否相等 { max=a[0]; mid=a[1]; min=a[2]; printf("%d->%d->%d",min,mid,max); } else{ min=minlist(a[0],a[1],a[2]);//调用用函数 max=maxlist(a[0],a[1],a[2]); for(i=0;i<=2;i++) { if(a[i]!=max&&a[i]!=min) { mid=a[i]; break; } } printf("%d->%d->%d",min,mid,max) ; } return 0; }