0
已解决
刘宇航
修练者
修练者
#include<iostream>
#include<cmath>
#include<windows.h>
using namespace std;
int dpos[1005][1005][15],ipos[1005][1005][15],opos[1005][1005][15],i=1,Error;
int sz[1005][15],twj[15];
int iinout[1005];
double dinout[1005];
bool binout[1005];
string sinout[1005];
string s,t[1000005];
double fd[1005];
long long sl[1005],cl[1005],vs[1005],pa[1005];
int main(){
cout<<"L.bc_1>|";
while(getline(cin,s)){
t[i]=s;
if(s.substr(0,4)=="int_"){
if(s[5]=='='){
for(int j=6;j<s.size();j++){
iinout[s[4]]=iinout[s[4]]*10+(s[j]-'0');
}
}
dpos[i][s[4]][1]=1;
fd[s[4]]=1.1;
}
else if(s.substr(0,7)=="double_"){
dpos[i][s[7]][2]=1;
fd[s[7]]=1.2;
}
else if(s.substr(0,5)=="bool_"){
if(s[6]=='='){
if(s[7]=='0') binout[s[5]]=0;
else binout[s[5]]=1;
}
dpos[i][s[5]][3]=1;
fd[s[5]]=1.3;
}
else if(s.substr(0,7)=="string_"){
if(s[8]=='='&&s[9]=='"'&&s[s.size()-1]=='"'){
for(int j=10;j<s.size();j++){
sinout[s[7]]+=s[j];
}
}
dpos[i][s[7]][4]=1;
fd[s[7]]=1.4;
}
else if(s.substr(0,4)=="lin>"&&(s[4]>='a'&&s[4]<='z')||(s[4]>='A'&&s[4]<='Z')){
if(fd[s[4]]==0) Error++;
if(fd[s[4]]==1.1) ipos[i][s[4]][1]=1;
if(fd[s[4]]==1.2) ipos[i][s[4]][2]=1;
if(fd[s[4]]==1.3) ipos[i][s[4]][3]=1;
if(fd[s[4]]==1.4) ipos[i][s[4]][4]=1;
}
else if(s.substr(0,5)=="lout<"&&(s[5]>='a'&&s[5]<='z')||(s[5]>='A'&&s[5]<='Z')){
if(fd[s[5]]==0) Error++;
if(fd[s[5]]==1.1) opos[i][s[5]][1]=1;
if(fd[s[5]]==1.2) opos[i][s[5]][2]=1;
if(fd[s[5]]==1.3) opos[i][s[5]][3]=1;
if(fd[s[5]]==1.4) opos[i][s[5]][4]=1;
}
else if(s=="L<Win>"){
twj[1]=1;
}
else if(s.substr(0,6)=="sleep("&&s[s.size()-1]==')'){
if(twj[1]==0) Error++;
for(int j=6;j<s.size()-1;j++){
sl[i]=sl[i]*10+(s[j]-'0');
}
}
else if(s.substr(0,7)=="system("&&s[7]=='"'&&s.substr(8,5)=="clean"&&s[13]=='"'&&s[14]==')'){
if(twj[1]==0) Error++;
cl[i]++;
}
else if(s.substr(0,7)=="system("&&s[7]=='"'&&s.substr(8,5)=="pause"&&s[13]=='"'&&s[14]==')'){
if(twj[1]==0) Error++;
pa[i]++;
}
else if(s=="over 0"){
break;
}
else if(s=="") ;
else Error++;
i++;
cout<<"L.bc_"<<i<<">|";
}
if(Error!=0){
cout<<Error<<" to Error!";
return 0;
}
cout<<endl<<"运行结果:"<<endl<<endl;
for(int lbcp=1;lbcp<=i;lbcp++){
if(sl[lbcp]!=0){
Sleep(sl[lbcp]);
continue;
}
if(cl[lbcp]!=0){
system("cls");
for(int sk=1;sk<=i;sk++){
cout<<"L.bc_"<<sk<<">|";
cout<<t[sk]<<endl;
}
cout<<endl<<"运行结果:"<<endl<<endl;
continue;
}
if(pa[lbcp]!=0){
system("pause");
system("cls");
for(int sk=1;sk<=i;sk++){
cout<<"L.bc_"<<sk<<">|";
cout<<t[sk]<<endl;
}
}
for(int j=1;j<=1000;j++){
if(ipos[lbcp][j][1]!=0){
cin>>iinout[j];
}
if(ipos[lbcp][j][2]!=0){
cin>>dinout[j];
}
if(ipos[lbcp][j][3]!=0){
cin>>binout[j];
}
if(ipos[lbcp][j][4]!=0){
cin>>sinout[j];
}
if(opos[lbcp][j][1]!=0){
cout<<iinout[j]<<" ";
}
if(opos[lbcp][j][2]!=0){
cout<<dinout[j]<<" ";
}
if(opos[lbcp][j][3]!=0){
cout<<binout[j]<<" ";
}
if(opos[lbcp][j][4]!=0){
cout<<sinout[j]<<" ";
}
}
}
return 0;
}
新增内容:
1.字符串赋值
2.头文件L<Win>
和Win头文件的操作 :
1)sleep(休息毫秒数) 休息(n)毫秒
2)system("clean") 清屏
3)system("pause") 按下任意键后清屏
今天题目:
给字符串变量s赋值为Hello!World!并输出,等待1.5秒后清屏,然后输入变量a并输出
变量a为字符串类型
难度:1星
啊啊啊~~~
我没豆子了,www~~~
悬赏后期我加~~~
刘宇航在2021-10-24 15:28:38追加了内容
加油吧,**年!