当前位置: 代码迷 >> C语言 >> 求助:编程中写了个函数,可怎么都通不过.谢谢
  详细解决方案

求助:编程中写了个函数,可怎么都通不过.谢谢

热度:117   发布时间:2006-12-05 11:26:59.0
main()
{
int n,j,k,l;
printf("INPUT n=");
do
{
scanf("%d",&n);
k=n*n-n+1,l=n*n+n-1;
for(j=0;k<=l;k+=2)
{ printf(" %d",k);
j+=k;
}
if(j=n*n*n) printf("sum=%d=n*n*n\n",j);
else printf("sum=%d!=n*n*n\n",j);
}
while(n!=0);

}

学长,这样写可以吗?

[此贴子已经被作者于2006-12-5 11:56:09编辑过]


----------------解决方案--------------------------------------------------------
首先我在这里谢谢chenfuyuxin。还有不知道你叫学长是叫哪为,如过是我的话那就太不敢当了,因为我还是一个刚上大一的计算机专业的学生。
还有就是,你写的这个程序看来是理解错了我说的题目的意思。题目的意思其实是:输入一个数,看这个数能否可以由连续的奇数相加而得。如果不能得的话,输出这个数不能够那样被拆分。而且不能用我上面说的那个,一个数的立方一定能够被连续的奇数相加而得的定理。 看来你是理解错了我说的意思。 不过还是要谢谢你费心思写了个程序!
----------------解决方案--------------------------------------------------------


while(scanf("%d",&num)!=EOF)这是个死循环!
只要你输入了字符,scanf的返回值总是1,不可能是EOF(-1).


----------------解决方案--------------------------------------------------------
以下是引用zzymoon在2006-12-6 14:00:56的发言:


while(scanf("%d",&num)!=EOF)这是个死循环!
只要你输入了字符,scanf的返回值总是1,不可能是EOF(-1).

麻烦你能够再说清楚一点吗?while(scanf("%d",&num)!=EOF 的意思不是输入一个整形的数然后再看是否是EOF吗?"不可能是EOF(-1). "是什么意思呢?我是个新手,麻烦说详细一点,谢谢.


----------------解决方案--------------------------------------------------------
  相关解决方案