值得说明的是本程序只能实现输入一行打印一行
我没用弄明白:输入多组数据然后一起打印是怎么做到的?
1 #include <stdio.h> 2 void myswap(char* a , char *b); 3 int main(void) 4 { 5 char buffer[4]; 6 while(gets(buffer)) 7 { 8 myswap(&buffer[0],&buffer[1]); 9 myswap(&buffer[0],&buffer[2]); 10 myswap(&buffer[1],&buffer[2]); 11 printf("%c %c %c ",buffer[0],buffer[1],buffer[2]); 12 } 13 return 0; 14 } 15 16 17 void myswap(char* a , char *b) 18 { 19 char c; 20 if(*a > *b) 21 {//a保存较小字符 22 c = *a; *a = *b; *b = c; 23 } 24 }
参考c++版本
1 #include <iostream> 2 #include <algorithm> 3 using namespace std; 4 5 int main(void) 6 { 7 char n[4]; 8 9 while (cin >> n) 10 { 11 if (n[0] > n[1]) swap(n[0], n[1]); 12 if (n[1] > n[2]) swap(n[1], n[2]); 13 if (n[0] > n[1]) swap(n[0], n[1]); 14 cout << n[0] << ' ' << n[1] << ' ' << n[2] << endl; 15 } 16 17 return 0; 18 }