解题思路:
%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 人评分
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:900 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:867 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:916 |
【计算球体积】 (C语言代码)浏览:1102 |
用筛法求之N内的素数。 (C语言代码)浏览:669 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:569 |
1126题解浏览:595 |
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:518 |
川哥的吩咐 (C语言代码)浏览:611 |
企业奖金发放 (C语言代码)浏览:2325 |