rt
这个版本不会闪屏
#include <bits/stdc++.h>
#include <windows.h>
using namespace std;
void clearScreen() {
HANDLE hConsole=GetStdHandle(STD_OUTPUT_HANDLE);
COORD coordScreen={0,0};
SetConsoleCursorPosition(hConsole,coordScreen);
} const char s[]="This is RJX.\nWelcome!\nAnd thanks for W010's code!\n%%%\n:):):):):)";
void dispC(char c,const string& prefix) {
clearScreen();
cout<<prefix+c<<endl;
Sleep(10);
} int main() {
HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFO info;
GetConsoleCursorInfo(handle,&info);
info.bVisible=0;
SetConsoleCursorInfo(handle,&info);
string a;
for(int k=0;k<sizeof(s);k++) {
char curr=s[k];
int start;
if(curr=='\n') {
start=9;
} else if (isspace(curr)) {
start=31;
} else if (isdigit(curr)) {
start=47;
} else if (islower(curr)) {
start=(curr>'m')?122:96;
} else if (isupper(curr)) {
start=(curr>'M')?90:64;
else {
start=31;
} if((islower(curr)&&curr>'m')||(isupper(curr)&&curr>'M')) {
for(int i=start;i>=curr;i--) {
dispC(i,a);
} a.push_back(curr);
} else {
for(int i=start;i<=curr;i++) {
dispC(i,a);
} a.push_back(curr);
}
} return 0;
}
共 6 条回复
%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% tql
第 33 行没有
}