大家别笑 我刚学 这是自己编的 帮我看看哪里错了 谢谢
main( )
{int i,t,u,v,w,sum;float sum1,sum2,x;
do{t=t+i; i++;}
while(i<=100);
do{u=u*w; w++;
sum=u+u*w;}
while(w<=20);
do{k=1/x;x++;
sum1=k+1/x;}
while(1<=10);
sum2=t+sum+sum1;
printf("f%",sum2);
}
----------------解决方案--------------------------------------------------------
只有一个print函数
他就只输出sum2而已
把程序分3个来写吧.
要不然就多加两个printf.还是建议分3个来写.
----------------解决方案--------------------------------------------------------
不是 可能是我的题目说的不明白
是求他们三个的垒加和的和~~就是1+2+.......+100的和再加1的阶乘+2的阶乘+....+20的阶乘
最后加上1/1+1/2+..................+1/10的和
----------------解决方案--------------------------------------------------------
谢谢了 下了~
----------------解决方案--------------------------------------------------------
program test;
var s,r:integer; i,j,k:real; begin
for r:=1 to 100 do s:=s+r; writeln('s=',s);
writeln;
i:=1; for r:=1 to 20 do begin i:=i*r; j:=j+i; end; writeln('j=',j); writeln;
for r:=1 to 10 do begin i:=r; i:=1/i; k:=k+i; end; writeln('k=',k); writeln;
readln;
end.
----------------解决方案--------------------------------------------------------
昨天在旧书摊上花了两块钱卖了一本APPLEII PASCAL,看了一天,现在一时兴起就写了这个玩意,见笑了,有什么不妥之处敬请PASCAL达人指点一二。
----------------解决方案--------------------------------------------------------
我自认为高手,等一下我写一个标准的啊――自认为!如果不明白联系我!!!!
----------------解决方案--------------------------------------------------------
你第一个循环1+..100的循环里面的t在后面都没用上.
sum2=sum+sum1+sum1;
第2个循环u,w,sum等的初始值没给.
建议先分3个循环做出答案调试成功后用调用,要是不习惯调用的话,一样也先分别做出3个循环的结果.
----------------解决方案--------------------------------------------------------
哈哈哈,刚才随便写了一下发现,这个问题,正是考验一个人啊。我发现用汇编或许更容易啊。不过楼主写的绝对错了:首先定义的变量初始化没有――不是很规范对于不同的编译器可能结果不一样;
其次sum=u+u*w;写为sum+=u;才对吧,这里 sum1=k+1/x;也应该写为sum1+=k;才对啊;
最后就是本题最核心的――1。精度(主要是指的第三部分,这一部分还是很好解决的;但是第二部分的对于C中的任何的基本数据类型都不能解决,要自己构造,并且要自己设置求解的函数)
2。数据溢出(主要是第二部分,由于是阶乘的问题,所以如果不考虑精度的话就应该用浮点型)
我正在设计求解
----------------解决方案--------------------------------------------------------
main( )
{ int i=1,t=0,u=1,,w=1,sum=0;
float sum1,sum2,x=1.0,k;
do{t=t+i; i++;}
while(i<=100);
for(i=0;i<=20;i++)
for(;w<=i;w++)
{u=w*u;
sum=sum+u;}
do{ k=1/x;
x++;
sum1=k+sum1;}
while(1<=10);
sum2=t+sum+sum1;
printf("%f",sum2);
getch();
}
不知这样对否!我个人认为是这样的,楼主那个程序问题多!如果可以认真想一下就可以了!
----------------解决方案--------------------------------------------------------