多次使用scanf()函数问题
1、多次输入都为非字符型,不用特殊处理
scanf("%d%d", &N, &M);
...
scanf("%d", &num);
2、多次输入中夹杂字符型数据输入,需做特殊处理
scanf("%d%d", &N, &M);
scanf("%c", &c);
由于第一次scanf()输入时,键盘输入回车表示输入结束,将缓冲区中的数据键入,而输入的回车仍然保留在缓冲区中,调用第二个scanf()时,会将回车符赋值给字符c,出现错误
解决办法:
scanf("%d%d ", &N, &M);
scanf("%c", &c);
scanf("%d%d", &N, &M);
getchar();
scanf("%c", &c);
scanf("%d%d", &N, &M);
scanf(" %c", &c);