c++编程:输入一个自然数n,求 ,同时统计结果中有多少个0。

如题所述

第1个回答  2009-10-10
计算函数可以写为:
int Calc(int k)
{
int ss=0;
int sum=0;
while(k != 0)
{
ss = k%10;
if(ss == 0)
sum++;
k = (k-ss)/10;
}
return sum;
}
当然,你也可以把我下面的代码全部copy一下,直接运行即可得结果,调试通过:
#include<iostream>
using namespace std;
int Calc(int k)
{
int ss=0;
int sum=0;
while(k != 0)
{
ss = k%10;
if(ss == 0)
sum++;
k = (k-ss)/10;
}
return sum;
}
int Calc(int);
void main()
{
int a,k;
cout<<"请输入一个自然数:";
cin>>k;
a = Calc(k);
cout<<"这个自然数中0的个数为:"<<a;

}
第2个回答  2009-10-11
look!look!
#include "stdafx.h"
#include<stdio.h>
void main()
{ int b=0;
char a;
while((a=getchar())!='\n') \\当变量等于回车时跳出循环
{
if (a=='0') b=b+1;
}
printf ("%d",b);
}
本人验证过好使 是VS2005的环境
第3个回答  2009-10-10
要求什么? 没显示出来 ,同时顺便问下n的范围,需要使用高精度么?本回答被提问者采纳
第4个回答  2009-10-10
求n! 吧?

c++编程:输入一个自然数n,求 ,同时统计结果中有多少个0。
int sum=0;while(k != 0){ ss = k%10;if(ss == 0)sum++;k = (k-ss)\/10;} return sum;} int Calc(int);void main(){ int a,k;cout<<"请输入一个自然数:";cin>>k;a = Calc(k);cout<<"这个自然数中0的个数为:"<...

输入一个自然数n,求n!,同时统计结果中有多少个0.
n,i=0;long int sn=1,t;printf("请输入n的值:");scanf("%d\\n",&n);for(i=1;i<=n;i++)sn=sn*i;t=sn;while(sn!=0){ sn=sn\/5;i++;\/\/累计0的个数 } printf("%d的阶乘结果为\\n",t);printf("结果中0的个数为:%d",i);} 用的是n!=1*2*3*4*5*6*7*8*9*10*...

c++编程:输入一个自然数n,求 n!,同时统计结果中有多少个0。_百度知 ...
int n;cin>>n;cout<<"n!="<<factorial(n)<<endl;cout<<"n!结果里0的个数有:"<<account(factorial(n))<<endl;} 运行过了,时间关系,算法没有优化...另外,计算范围有限...应该可以交差了吧...

输入一个自然数n,求n!,同时统计结果中有多少个0
if (x==0||x==1)i=1;else i=jc(x-1)*x;return (i);} 阶乘jc()函数是仿照谭浩强的c程序设计编写的,由于位数的关系只能算到12!你可以自己改精度 求零部分是自己想出来的,用的是n!=1*2*3*4*5*6*7*8*9*10*11……=1*2*3*(2*2)*5*(2*3)*7*(2*2*2)*(3*3)*(...

c++编程 从键盘输入任意自然数N(N>10)要求
include"iostream"include "iomanip"using namespace std;include"math.h"void isprime(int x);void main(){ int a;cout<<"输入n 的值";cin>>a;cout<<"isprime form"<<'3'<<"to"<<a<<"is:\\n";isprime(a);cout<<endl;} void isprime(int x){int m;double sqrtm;for( m=3;m<x...

(C++程序)输入一个正整数N,计算N个数里面有多少奇偶数
include<stdio.h>int main(){int n;int l;int ou=0,ji=0;scanf("%d",&n);while(n--){scanf("%d",&l);if(l%2==0)ou++;elseji++;}printf("%d,%d",ji,ou); \/\/这里根据具体格式调整一下,}你也可以将输出贴出来,我来调整 ...

C语言:任意输入一个自然数,输出该自然数的各位数字组成的最大数。例 ...
intarr[10]={0};ﻩﻩ//存储各个数字出现的次数,初始化为0 //统计各个数字出现的次数 while(1){ ch=getchar();if(ch=='\n'){ break;} arr[ch-'0']++;} inti,j;//输出各个数字出现的次数 for(i=9;i>=0;i--){ printf(...

c++题目 数列求和 输入一个正整数n n<100,计算并输出如下图
n为int型,1\/n永远等于0。改为sum+=1\/(float)n

怎么用C++编程,输入一个数,使它输出整数部分的长度
就算出了整数的位数 include<iostream> using namespace std;void main(){ double temp;cout << "请输入一个数:" << endl;cin >> temp;int i=1;int j=0;while (temp \/ i > 1){ j++;i = i * 10;} cout << "这个数整数部分有" << j << "位。" << endl;} ...

c++中怎么写出:“输入一个正整数n,再输入n个整数,输出最小值”的代 ...
int main(){ int num;cout<<"请输入你的n值!";cin>>num;int type;int aa[1000];cout<<"请输入你的n个数!"<<endl;for(int i=0;i<num;i++){ cout<<"现在输入 第"<<i+1<<"个"<<endl;cin>>type;aa[i]=type;} int min=aa[0];for(i=1;i<num;i++){ if(aa[i-1]...

相似回答
大家正在搜