解法:字符串题,c++里的sting类!
#include<bits/stdc++.h>
using namespace std;
int main()
{
string str,st;
int v=0;
while(cin>>str>>st)
{
string str1,str2,str3,str4;
int op=str.find(".");
int op1=st.find(".");
for(int i=0;i<op;i++)
str1+=str[i];
for(int i=op+1;i<str.size();i++)
str2+=str[i];
for(int i=0;i<op1;i++)
str3+=st[i];
for(int i=op1+1;i<st.size();i++)
str4+=st[i];
if(str2.size()>str4.size())
{
int len=str2.size()-str4.size();
for(int i=0;i<len;i++)
str4+='0';
}
else if(str2.size()<str4.size())
{
int len=str4.size()-str2.size();
for(int i=0;i<len;i++)
str2+='0';
}
if(str[0]=='-'&&st[0]!='-')
printf("Case %d: Smaller\n",++v);
else if(str[0]!='-'&&st[0]=='-')
printf("Case %d: Bigger\n",++v);
else if(str[0]=='-'&&st[0]=='-')
{
str1.erase(0,1);
str2.erase(0,1);
str3.erase(0,1);
str4.erase(0,1);
if(str1==str3&&str2==str4)
printf("Case %d: Same\n",++v);
else if(str1<str3||str1==str3&&str2<str4)
printf("Case %d: Bigger\n",++v);
else if(str1>str3||str1==str3&&str2>str4)
printf("Case %d: Smaller\n",++v);
}
else if(str[0]!='-'&&st[0]!='-')
{
if(str1==str3&&str2==str4)
printf("Case %d: Same\n",++v);
else if(str1<str3||str1==str3&&str2<str4)
printf("Case %d: Smaller\n",++v);
else if(str1>str3||str1==str3&&str2>str4)
printf("Case %d: Bigger\n",++v);
}
}
return 0;
}