rmml.net
当前位置:首页 >> 求解析~我理解不了s:=s+n moD 10;和 n:=n Div 10; >>

求解析~我理解不了s:=s+n moD 10;和 n:=n Div 10;

type arr=array[1..500]of longint; var a,b:arr; i,n,w1,w,j:longint; procedure jia; var c:arr; w2,i:longint; begin w2:=w; fillchar(c,sizeof(c),0); for i:=1 to w2 do begin c[i]:=c[i]+a[i]+b[i]; c[i+1]:=c[i+1]+c[i] div 10; c[i]:=c[...

s=1+2+...+10=55 while语句中根据初始值,s显然不会为0,所以第一个s=s+n不会终止循环,第二个n也大于0且一直加所以也不会终止循环,所以退出while只能是n

当 s 10 时,循环结束 输出 n 值

这里涉及到2个算法,一个是分离整数的各个数位,另一个是累加 首先来说分离数位,比如 n = 12345 一个整数对10求余的结果是0到9,因此它是个位数 则n%10得到个位数5 如何求十位数呢?如果把5去掉,让n=1234,再求余不就可以了吗? 因此有n = n/1...

思路:先定义一个函数fun(n)用来计算1到n的和,接着for循环计算1到n的fun(n)和就是s的值。 参考代码: #include int fun(int n){int sum=0,i;for(i=1;i

声明一个和记录变量s,声明一个阶乘记录变量t,再声明一个计数变量n。用一个for循环,计数变量n从1开始步长为1增值至10为止;t初值设置为1,始终记录它与n的当前值的乘积,就得到了n的当前值的阶乘n!;s初值置0,累加每个n当前值时的阶乘t,就完...

看了一下上面的人的回答,全错了,补上我的。他们思想都是对的,只是通项错了。 Private Sub Form_Click() Dim n As Integer, k As Integer, s As Integer 'n表示每一项的值,k表示项数,s表示总和 k = 0: s = 0 '累加器s清空,计数器k清空 Do W...

1:n对10取余数,然后用得到的余数和s相乘,最后得到的数再赋值给S 2:n对10取整数商,然后把得到的整数商赋值给n

找不到哪错了,我编了一个、和你的不同! 可以看看 #include main() { int a; int s=0; int c; int t=0; int i,j; printf("本程序求和s=a+aa+aaa+...\n"); printf("请分别输入a值及求和次数"); scanf("%d %d",&a,&c); i = 1; while(i

网站首页 | 网站地图
All rights reserved Powered by www.rmml.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com