写了一篇自动缩进的程序,有大佬有改进意见吗?
#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;
}