哪位大神能看一下哪错了,70分,(我个人写注释不多)
#include <bits/stdc++.h>
using namespace std;
int main()
{
string a;
cin>>a;
int flag=0;
int y=0;
for(int i=0;i<a.size();i++)//判断是整数,小数,除法,还是百分数
{
if(a[i]=='.')
{
flag=1;
y=i;
}
if(a[i]=='/')
{
flag=2;
y=i;
}
if(a[i]=='%')
{
flag=3;
}
}
if(flag==0)
{
int flag1=0;
for(int i=a.size()-1;i>=0;i--)
{
if(flag1==0 and a[i]=='0')
{
continue;
}
else
{
flag1=1;
cout<<a[i];
}
}
return 0;
}
if(flag==1)
{
int flag1=0;
for(int i=y-1;i>=0;i--)
{
if(flag1==0 and a[i]=='0')
{
continue;
}
else
{
flag1=1;
cout<<a[i];
}
}
flag1=1;
cout<<'.';
for(int i=a.size()-1;i>y;i--)
{
if(flag1==0 and a[i]=='0')
{
continue;
}
else
{
flag1=0;
cout<<a[i];
}
}
return 0;
}
if(flag==2)
{
int flag1=0;
for(int i=y-1;i>=0;i--)
{
if(flag1==0 and a[i]=='0')
{
continue;
}
else
{
flag1=1;
cout<<a[i];
}
}
flag1=0;
cout<<'/';
for(int i=a.size()-1;i>y;i--)
{
if(flag1==0 and a[i]=='0')
{
continue;
}
else
{
flag1=1;
cout<<a[i];
}
}
return 0;
}
if(flag==3)
{
int flag1=0;
for(int i=a.size()-2;i>=0;i--)
{
if(flag1==0 and a[i]=='0')
{
continue;
}
else
{
flag1=1;
cout<<a[i];
}
}
cout<<'%';
return 0;
}
return 0;