更新时间2019-03-13 04:54:31
//这道题关键是把输入3个字符后的回车过滤掉,不然回车就会成为下一组的第一个字符。有两种方法://第一种:#include <stdio.h>int main(){ char a,b,c,tmp; while((a=getchar())!=EOF) { b=getchar(); c=getchar(); getchar(); //在录入c后用getchar()滤掉回车 if(a>b) { tmp=a; a=b; b=tmp; } if(a>c) { tmp=a; a=c; c=tmp; } if(b>c) { tmp=b; b=c; c=tmp; } printf("%c %c %c ",a,b,c); } return 0;}
不太懂,回车参与比较了么?也没参与输出吧,为什么会影响这么大?是不满足前提条件所以就直接报错的么?你一开始思考这道题目的思路是什么啊?本人有点笨,请多多指教,如果言语不当,请见谅,谢谢。
你的这个程序就是每次输入3个字符,然后进行比较
a是第一个,b是第二个,c是第3个
回车当然没有参与比较,它读入后没有赋给任何变量(你可以理解为直接抛弃了)