
c语言编程,考试,急用!!!
编程计算正数sum各位上的数字之积(正数整数sum通过scanf函数语句输入),例如,若输入:252,则输出应是:20;如输入:202,则应为:0....
编程计算正数sum各位上的数字之积(正数整数sum通过scanf函数语句输入),例如,若输入:252,则输出应是:20;如输入:202,则应为:0.
展开
3个回答
展开全部
利用函数实现,程序很简单该注释的都注释上了,不用多说了吧!
源程序代码如下所示,仅供参考:
#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
int main() {
char hstr[20];//输入的数字位数不能超过数组的大小
int num,mul=1;
cout<<"请出入一个正整数:"; //如果输入的整数以0开头,将默认此0不是整数内容,从第一位不是0的数开始
cin>>num;
ultoa(num,hstr,10);//将整数转化成字符数组形式存放
for(int i=0;i<strlen(hstr);i++){
mul*=(int)(hstr[i]-48);//求各个位数字之和
//注意:因用函数转变后为字符型,其值为ASCII码表示的,故要减去48使的他和实际的数值对应
}
cout<<"该整数各个数位数字之积mul= "<<mul<<endl;
return 0;
}
源程序代码如下所示,仅供参考:
#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
int main() {
char hstr[20];//输入的数字位数不能超过数组的大小
int num,mul=1;
cout<<"请出入一个正整数:"; //如果输入的整数以0开头,将默认此0不是整数内容,从第一位不是0的数开始
cin>>num;
ultoa(num,hstr,10);//将整数转化成字符数组形式存放
for(int i=0;i<strlen(hstr);i++){
mul*=(int)(hstr[i]-48);//求各个位数字之和
//注意:因用函数转变后为字符型,其值为ASCII码表示的,故要减去48使的他和实际的数值对应
}
cout<<"该整数各个数位数字之积mul= "<<mul<<endl;
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
void main()
{
unsigned int sum,product=1;
printf("Please enter a positive number:");
scanf("%u",&sum);
while(sum>0)
{
product*=sum%10;
sum/=10;
}
printf("The product is %u\n",product);
}
void main()
{
unsigned int sum,product=1;
printf("Please enter a positive number:");
scanf("%u",&sum);
while(sum>0)
{
product*=sum%10;
sum/=10;
}
printf("The product is %u\n",product);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上两位把c和c++都写出来了~
大家六一节日快乐~
大家六一节日快乐~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询