留下做题痕迹
2024-08-20 14:30:32
发布于:广东
1阅读
0回复
0点赞
一个if,写了四行
很长的if,在我的编辑栏里长四行
#include<bits/stdc++.h>
using namespace std;
int main(){
int p1,p2,p3,nlen;
string befor,after="";
scanf("%d %d %d",&p1,&p2,&p3);
cin>>befor;
after+=befor[0];
for(int i=1;i<befor.size()-1;i++){
if(befor[i]=='-'&&befor[i-1]<befor[i+1]&&(befor[i-1]>='a'&&befor[i-1]<='z'&&befor[i+1]>='a'&&befor[i+1]<='z'||befor[i-1]>='A'&&befor[i-1]<='Z'&&befor[i+1]>='A'&&befor[i+1]<='Z'||befor[i-1]>='0'&&befor[i-1]<='9'&&befor[i+1]>='0'&&befor[i+1]<='9')){
if(p3==2){
for(char j=befor[i+1]-1;j>=befor[i-1]+1;j--){
for(int k=1;k<=p2;k++){
if(p1==3)after+="*";
else if(p1==2&&j>='a'&&j<='z')after+=(j-32);
else if(p1==1&&j>='A'&&j<='Z')after+=(j+32);
else after+=j;
}
}
}else{
for(char j=befor[i-1]+1;j<=befor[i+1]-1;j++){
for(int k=1;k<=p2;k++){
if(p1==3)after+="*";
else if(p1==2&&j>='a'&&j<='z')after+=(j-32);
else if(p1==1&&j>='A'&&j<='Z')after+=(j+32);
else after+=j;
}
}
}
}else after+=befor[i];
}
after+=befor[befor.size()-1];
cout<<after;
return 0;
}
这里空空如也
有帮助,赞一个