#include<stdio.h>
int main(void)
{
int x,y,z,temp,min,max;
printf("请输入三个数字:\n");
scanf("%d%d%d",&x,&y,&z);
temp = x < y? x : y;
min = temp < z? temp : z;
temp = x < y? y : x;
max = temp < z? z : temp;
printf("从小到大排序:");
printf("%d%3d%3d",min,x + y + z - min - max,max);
return 0;
}
1663c-exercise-example5
简化代码如下:
#include <stdio.h>
int main()
{
int a,b,c;
printf ("输入三个整数:");
scanf ("%d%d%d",&a,&b,&c);
if (a>b&&a>c)/* 当第一个数(a)为最大时,直接输出 a */
;
else
a=(b>c) ? b : c; /* 当 a 不为最大数时,将剩下两数中最大的数赋值给 a*/
/* 输出 a 值(中间的 _?_:_ 为三目运算,指判断第一个表达式的真假,若第一个表达式为真,则第二个表达式的值代表整个表达式的值,若第一个表达式为假。则第三个表达式的值代表整个表达式的值) */
printf ("%d",a);
return 0;
}
1662c-exercise-example5
三目运算法
#include "stdafx.h"
//题目:输入三个整数x,y,z,请把这三个数由小到大输出。
int _tmain(int argc, _TCHAR* argv[])
{
int num1,num2,num3;
int max, min,mid;
printf("请输入三个数字:\n");
scanf_s("%d%d%d", &num1, &num2, &num3);
max = num1>num2 ? num1:num2;
max = max>num3 ? max:num3;
min = num1<num2 ? num1:num2;
min = min<num3 ? min:num3;
mid = (num1!=max && num1!= min) ? num1:num2;
mid = (mid!=max && mid!= min) ? mid:num3;
printf_s("从小到大排序:%d %d %d",min,mid,max);
return 0;
}
return 0;}
1661c-exercise-example5
参考方法:
#include<stdio.h>
int max(int,int);
int min(int,int);
int main()
{
int x,y,z,max0,max1,max2,min0,min1,min2;
printf("Please enter three number(1,2,3): ");
scanf("%d,%d,%d",&x,&y,&z);
max0=max(x,y);min0=min(x,y);
max1=max(max0,z);min1=min(max0,z);
max2=max(min0,min1);min2=min(min0,min1);
printf("The last is: %d,%d,%d",min2,max2,max1);
}
int max(int a,int b){
int temp,num;
if(a>b)
{
num=a;
}else{
num=b;
}
return num;
}
int min(int a,int b){
int temp,num;
if(a<b)
{
num=a;
}else{
num=b;
}
return num;
}
1665c-exercise-example5
参考方法:
1664c-exercise-example5
参考方法:
1663c-exercise-example5
简化代码如下:
1662c-exercise-example5
三目运算法
return 0;}1661c-exercise-example5
参考方法: