任意输入3个整数,使用if语句对这3个整数由小到大进行升序排序。请判断下面哪一项无法实现该功能。
#include <stdio.h>
/* 交换x和y */
void swap(int* x, int* y)
{
int temp = *x;
*x = *y;
*y = temp;
}
int main(int argc, char** argv)
{
int a, b, c;
printf("请输入 a,b,c:\n");
scanf("%d,%d,%d", &a, &b, &c);
(_____1_____)
printf("升序排序结果:\n");
printf("%d,%d,%d", a, b, c);
return 0;
}
if ((a < b) && (b < c) && (a < c));
if ((a < b) && (b > c) && (a < c))
swap(&b, &c);
if ((a > b) && (b < c) && (a < c))
swap(&a, &b);
if ((a < b) && (b > c) && (a > c))
swap(&a, &b), swap(&a, &c);
if ((a > b) && (b < c) && (a > c))
swap(&b, &c), swap(&a, &c);
if ((a > b) && (b > c) && (a > c))
swap(&a, &c);
//正确
if (a > b)
swap(&a, &b);
if (a > c)
swap(&a, &c);
if (b > c)
swap(&b, &c);
//正确
if (a > b)
{
swap(&a, &b);
if (a > c)
swap(&a, &c);
if (b > c)
swap(&b, &c);
}//错误
if (a > c)
swap(&a, &c);
if ((a < b) && (b < c));
if ((a < b) && (b > c))
swap(&b, &c);
if ((a > b) && (b < c))
swap(&a, &b);
//正确
解析:本题使用if语句进行判断3个整数的大小,整数大小出现不一致的情况下调用void swap(int* x, int* y)函数将整数顺序进行置换。错误选项如果a<b整个循环语句不执行无法进行排序