首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求指点解决办法

2012-04-07 
求指点include stdio.hvoid main(){int i,n,a,b,cprintf(Enter a positive integer end with -1: )s

求指点
include "stdio.h"
void main()
{
int i,n,a,b,c;
printf("Enter a positive integer end with -1: ");
scanf("%d",&n);
while(n!=-1)
{
a=1;
do
{
b=a;
c=0;
for(i=1;i<=n;i++)
{
c+=b;
b+=2;
}
if(c==n*n*n)
break;
else 
a+=2;
}while(1);
printf("%d*%d*%d=",n,n,n);
for(i=1;i<=n;i++)
{
printf("%d",a);
if(i!=n)
printf("+");
a+=2;
}
printf("\nEnter a positive integer end with -1:"); 
scanf("%d",&n);
}
}


哪位帅哥帮我解释一下以下这段代码的功能是什么,以及它是怎么执行的呢?
while(n!=-1)
{
a=1;
do
{
b=a;
c=0;
for(i=1;i<=n;i++)
{
c+=b;
b+=2;
}
if(c==n*n*n)
break;
else 
a+=2;
}while(1);


[解决办法]
查找一个奇数,从这个奇数开始到第n个奇数为止的和等于n*n*n
[解决办法]

C/C++ code
    while(n!=-1)//输入-1结束循环    {        a=1;        do//从1开始查找符合的奇数        {            b=a;            c=0;
[解决办法]
C/C++ code
            for(i=1;i<=n;i++)//计算从当前奇数开始到n个奇数为止的总和            {                c+=b;                b+=2;            }            if(c==n*n*n)//如果符合,则跳出                break;            else //否则查看下一个奇数                 a+=2;        }while(1); 

热点排行