题解。。。仅供参考

P1307 [NOIP2011 普及组] 数字反转

无羡qwq @ 2017-09-21 20:16:56

#include<iostream>
using namespace std;
int main(){
  int n,m=1,k=1;
  int a[10];
  cin>>n;
  if(n<0)
  {
      cout<<"-";
      n=0-n;
  }
  while(n!=0)
  {
      a[m]=n-(n/10)*10;
      n=n/10;
      m++;
  }
  for(int i=1;i<m;i++)
  {
      if(a[i]!=0)
      {
          break;
      }
      k++;
  }
  for(int i=k;i<m;i++)
  {
      cout<<a[i];
  }
  cout<<endl;
    return 0;
}

by xiangling @ 2017-09-25 23:06:26

几分钟写的垃圾代码 没有优化 代码风格有很有问题 就是这样

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n;  bool flag=1;
    cin>>n;
    if(n<0) flag=0;
    n=abs(n);
    int a[20];int i=0;
    while(n>0)
    {
        a[i++]=n%10;
        n/=10;
    }
    if(!flag)cout<<"-";
    int t;
    for(int j=0;j<i;j++)
    {
        if(a[j]!=0){
            t=j;
            break;
        }
    }    
    for(int j=t;j<i;j++)
    {
        cout<<a[j];
    }
    return 0;
}

|