输入一个任意整数(int型),输出其位数并逆序输出该数。
输入一个任意整数(int型),输出其位数并逆序输出该数。
输入一个任意整数(int型)
输出其位数及逆序数
12345 -123 100
54321 5 -321 3 1 3
一般解答(不用考虑0处于非零数字之间位置想要保留的情况):
代码如下:
#include<bits/stdc++.h> using namespace std; int main(){ int n; while(cin>>n){ int sum=0;int b=n,c=n; while(n){ int a=n%10; if(((n==b&&n<0)||b>0)&&a!=0) cout<<a; else if(b<0) cout<<-a; sum++; n/=10; } cout<<" "<<sum<<endl; } return 0; }
#include<bits/stdc++.h> using namespace std; int main(){ int n; while(cin>>n){ int sum=-1;int b=n,c=n; while(n){ int a=n%10; c/=10; while(!a&&c%10==0){ a=n%10; n/=10; sum++; } if(((n==b&&n<0)||b>0)) cout<<a; else if(b<0) cout<<-a; if(n==b) sum+=2; else sum++; n/=10; } cout<<" "<<sum<<endl; } return 0; }
ZSTUOJ平台刷题①:Problem 3531.--逆序数
原文:https://www.cnblogs.com/Xuou7/p/14774397.html