标题:程序简化(有两道题,我自己写了程序,希望大家看看能不能有所改进或更简单 ...
取消只看楼主
qishi123
Rank: 1
等 级:新手上路
帖 子:78
专家分:9
注 册:2012-9-5
结帖率:78.57%
已结贴  问题点数:20 回复次数:1 
程序简化(有两道题,我自己写了程序,希望大家看看能不能有所改进或更简单的程序)
1。计算s=1!-2!+3!-…+n!,n由键盘输入;
#include <stdio.h>
void main()
{
int n,i,j=1,k=-1;
double s=1.0;
printf("please input n:");
scanf("%d",&n);
for(i=2;i<=n;i++)
{
j=j*i;
s=s+j*k;
k=k*(-1);
}
printf("s=%f",s);
}
2.求s=1+3+5+…+n,当s刚好大于3000时n的值,输出n与s。
#include <stdio.h>
void main()
{
int n,j,s=0;
for(n=1;s<=3000;n++)
{j=2*n-1;
s=s+j;
}
printf("n=%d,s=%d",n,s);
搜索更多相关主题的帖子: please include double 
2012-10-19 07:50
qishi123
Rank: 1
等 级:新手上路
帖 子:78
专家分:9
注 册:2012-9-5
得分:0 
回复 3楼 lylhe
第二个输出的确有问题,应该为:
#include <stdio.h>
void main()
{
int n,i,s=0;
for(i=1;s<=3000;i++)
{n=2*i-1;
s+=n;
}
printf("n=%d,s=%d",n,s);
}
2012-10-19 12:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-383586-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.095700 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved