📄 subject_56866.htm
字号:
<p>
序号:56866 发表者:adam&amp;ancy 发表日期:2003-10-21 13:03:16
<br>主题:帮忙分析一下,^_^
<br>内容:#include <stdio.h><BR>#include <math.h><BR><BR>main()<BR><BR>{<BR> int n,k,k1,m,i;<BR><BR> scanf("%d",&n);<BR><BR> while(n!=0)<BR><BR> {<BR> k1=1;<BR><BR> do{k=k1;<BR><BR> m=0;<BR><BR> for(i=1;i<=n;i++)<BR><BR> {<BR> m=m+k;<BR><BR> k=k+2;<BR><BR> }<BR><BR> if(m==n*n*n) break;<BR><BR> else k1=k1+2;<BR><BR> }while(1);<BR><BR> for(i=1;i<=n;i++)<BR><BR> {<BR> printf("%d",k1);<BR><BR> k1=k1+2;<BR><BR> }<BR><BR> printf("%d",k1);<BR><BR> scanf("%d",&n);<BR><BR> }<BR><BR>}<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:独行侠1 回复日期:2003-10-21 14:17:54
<br>内容:猜测你的本意:<BR>用户键盘输入一个正整数n,输出连续n个奇数(从小到大),使这n个奇数的和恰好等于n的立方。随后再让用户输入。<BR>但你的程序好像有点问题:即是最好一个printf语句(倒数的四行),不知道是干什么用的。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:独行侠1 回复日期:2003-10-21 14:18:44
<br>内容:补充一点:输入零则退出程序。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:adam&amp;ancy 回复日期:2003-10-22 03:06:52
<br>内容:是啊,忘记给出题目了,埃,题目就是你所说的。<BR><BR>问题是我对这段代码不是很清楚,我是对最后那个scanf()不知道有什么用,<BR><BR>可以说下不?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:独行侠1 回复日期:2003-10-22 09:19:49
<br>内容:最后一个scanf的意思是当用户输入一个数,程序经过计算输出排列后,让用户再继续输入(此时程序不会结束),直到用户输入了零,程序结束。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:adam&amp;ancy 回复日期:2003-10-22 13:46:25
<br>内容:嗯,^_^ for(i=1;i<=n;i++)<BR><BR> {<BR> printf("%d",k1);<BR><BR> k1=k1+2;<BR><BR> }<BR><BR> printf("%d",k1);<BR><BR> scanf("%d",&n);<BR><BR><BR> }它这里的k1=k1+2;为什么不是按顺序输出,而是会选择输出。如输入2它输出357,而输出791113?为什么不是从1开始呢?我不明白 还请多说一下,谢谢了.
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:独行侠1 回复日期:2003-10-22 15:58:28
<br>内容:<BR>当然不可能从1开始输出,这是有你的程序决定的。就是那个do循环。在do循环中的for循环,确实是从1开始连续加n各质数,并把这个和赋值给m,for 循环结束后,有一个if语句(if(m==n*n*n) break;)来判断是否退出do循环。如果if条件不符合,即m!=n*n*n,则k1加2。再从这个k1(不等于1了)开始连续加n个质数。依此类推,直到m==n*n*n为止,跳出do循环,输出从k1开始的这n个质数。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:adam&amp;ancy 回复日期:2003-10-23 12:05:18
<br>内容:哦,是哦,真是谢谢了。^_^
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -