有大佬帮我改一下代码吗
  • 板块学术版
  • 楼主_Sajel_
  • 当前回复2
  • 已保存回复2
  • 发布时间2020/10/15 20:31
  • 上次更新2023/11/5 10:42:20
查看原帖
有大佬帮我改一下代码吗
283052
_Sajel_楼主2020/10/15 20:31

写了一篇自动缩进的程序,有大佬有改进意见吗?

#include <bits/stdc++.h>
using namespace std;
char A[10000000];
long long ans;
void move1(int n){
	if(A[n]=='i') A[n]='I';
	int j=A[n];
	int k;
	for(int i=n;i<ans;i++){
		k=A[i+1];
		A[i+1]=j;
		j=k;
	}
	A[n]=' ';
	ans++;
}
void pan(int n){
	if(A[n]>='a'&&A[n]<='z'){
		A[n]=A[n]-'a'+'A';
	} 
}
int main(){
	long long I=0;
	char ch; 
	
	while(ch=getchar())
	{
		if(ch=='$') break;
		A[I]=ch;
		I++;
	}
	if(A[0]=='i') A[0]='I';
	ans=strlen(A);
	for(int i=0;i<strlen(A);i++){
		if(A[i-1]=='.'||A[i-1]=='!'||A[i-1]=='?'){
		pan(i);
		if(A[i]!=' ') move1(i);
		}
		else if(A[i-1]==','&&A[i]!=' '){
			move1(i);
		}
	}
	for(int j=0;j<=ans;j++){
		cout<<A[j];
	}
	return 0;
}
2020/10/15 20:31
加载中...