输入一个字符串,将其中的数字字符移动到非数字字符之后,并保持数字字符贺非数字字符输入时的顺序。
代码:
#include <cstdio>
#include <queue>
using namespace std;
int main() {char str[200];fgets(str, 200, stdin);//读入一行字符串queue<char> numQue;//数字队列queue<char> chQue;//字符队列for (int i = 0; str[i] != '\n'; ++i) {if (str[i] >= '0' && str[i] <= '9') {numQue.push(str[i]);//数字入队}else {chQue.push(str[i]);//字符入队}}//将数字移到非数字字符之后while (!numQue.empty()) {chQue.push(numQue.front());numQue.pop();}while (!chQue.empty()) {printf("%c", chQue.front());chQue.pop();}
}
运行结果: