解题思路:
%10用来求位数,/10用来递减位数
注意事项:
一开始以为不够大,提交了好多次,改了半天才发现有一个输入0的检测,
所以必须要有手动检测输入0时的状况
参考代码:
#include<iostream>
#include<cstdlib>
int main()
{
using namespace std;
unsigned long long num,a,b,m=0,n=1,s;
cin>>num;
s=num;
if(num==0)
{
cout<<"0 0"; //手动输出0 0,并且退出程序
exit(0);
}
while(num)
{
a=num%10;
n*=a; //计算乘积
m+=a; //计算位数和
num/=10; //减去最后一位
}
cout<<m<<" "<<n;
return 0;
}
0.0分
0 人评分