编程题,自己编的给高分哦!!

来源:百度知道 编辑:UC知道 时间:2024/06/24 10:23:22
输入一个自然数n,求 ,同时统计结果中有多少个0
不好意思,题目不全。 是求n!

这个是我的解答
#include<stdio.h>
void main(){
long int i,k,l,m=1;
int j,count=0;
printf("PLEASE INPUT THE NUM:\n");
scanf("%ld",&i);/*输入要操作的数*/
k=i;
for(l=i;l>=1;--l){
m*=l;
}
while(i>0){
j=i%10;
if(j==0) count+=1;/*count进行计数*/
i=i/10;
}
printf("THERE ARE %d ZERO IN %ld\n%ld!=%ld\n",count,k,k,m);/*输出结果*/
getch();
}
不过好像有点问题,我在TC里编译,计算阶乘,单步执行显示都是对的,但是真正的屏幕上显示的却不是单步执行里的东西,现在还不清楚为什么。在VC下编译是跟预想的一样,可能我遇到TC的缺陷了吧。你先看看吧,我去查些资料。刚才一直在弄这个,耽误了些时间,对不起啊。不过还是不明白,哎~~,看来自己还是没学好啊,呵呵。你用VC编译先用着吧,TC的话,我想办法问问其它人,看有人知道不
嗯,找到错误了,哎~~,原来自己这么粗心,真是该打,最后输出语句里第二个k的输出格式少了个l
printf("THERE ARE %d ZERO IN %ld\n%d!=%ld\n",count,k,k,m);/*输出结果*/
现在可以了,呵呵,应该比较好了,只是完成了功能,没加上容错处理。

#include<iostream.h>
void main()
{int n,i;
long int sn=1,t;
cout<<"请输入n的值:";
cin>>n;
for(i=1;i<=n;i++)