哪个大哥帮忙解答下。谢谢
main(){
long a=0,b=1;
int i;
printf("%d%d",a,b");
for(i=1;i<30;i++)
{
a=a+b;
b=b+a;
printf("%12ld,%12ld",a,b);
if(这句忘了。不过是个控制语句。要每行显示4个数 )
}
} 哪个高手帮帮忙,0-60相加。要求显示每步的运行结果。但是后边的数竟然是负的。郁闷。搞不出来了。
----------------解决方案--------------------------------------------------------
人呢。难道都睡找了???郁闷。
----------------解决方案--------------------------------------------------------
[img]http://bbs.bc-cn.net/bbs/dispbbs.asp?boardID=5&ID=14954&page=1/Winter[/img]
[此贴子已经被作者于2005-4-6 19:55:13编辑过]
----------------解决方案--------------------------------------------------------
你这个程序a=a+b ,b=b+a. 这样递增是很快的.到最后会很大的数.而a,b才是LONG 型.太小啦.
只4个字节.即只能表示2的31次方这么大的数.若程序没错的话,可定义为__int64型的.试一下.
----------------解决方案--------------------------------------------------------
//0-60相加。要求显示每步的运行结果, 每行显示4个结果
#include"stdio.h"
main()
{ int i,j,k,sum=0;
int a[15][4],*p;
p=a;
for(i=0;i<60;i++)
{ sum+=i;
*p++=sum;
}
for(j=0;j<15;j++)
{ for(i=0;i<4;i++)
{ printf("%d,",a[j][i]);
}
printf("\n");
}
}
[此贴子已经被作者于2005-4-6 20:34:03编辑过]
----------------解决方案--------------------------------------------------------
//这个是改进版本
//0-60相加。要求显示每步的运行结果, 每行显示4个结果
#include"stdio.h"
main()
{ int i,j,sum=0;
int a[15][4],*p;
p=a;
for(i=0;i<60;i++)
{ sum+=i;
*p++=sum;
}
p=a;
for(i=0;i<60;i++)
{ if(i>0&&i%4==0) printf("\n");
printf("%d,",*p++);
}
}
----------------解决方案--------------------------------------------------------
#include"stdio.h" main() { int i,sum=0; int a[15][4],*p; p=a; for(i=0;i<60;i++) { sum+=i; *p=sum; printf("%d ",*p); if(i>0&&!(i%4)) printf("\n"); p++; } } //再改
[此贴子已经被作者于2005-4-6 21:09:39编辑过]
----------------解决方案--------------------------------------------------------
//我也改 //0-60相加。要求显示每步的运行结果, 每行显示4个结果 #include"stdio.h" main() { int i,sum=0; for(i=0;i<=60;i++) //0-60 { sum+=i; if(i%4 == 0) //每行打印四个 printf("%4d",sum); } } |
----------------解决方案--------------------------------------------------------
我也改下
#include"stdio.h"
main()
{
int i,sum=0;
for(i=0;i<=60;i++)
{
sum+=i;
if(i%4 == 0)
printf("%4d\n",sum);
}
}
在楼上的基础上加了个\n
----------------解决方案--------------------------------------------------------
//谢谢楼上提醒,我发现我的程序有个错误.现予以更正(原帖在8楼) //不过可惜楼上的"\n"加的不是地方. //不过还是要谢谢! //0-60相加。要求显示每步的运行结果, 每行显示4个结果 #include"stdio.h" main() { int i,sum=0; for(i=0;i<=60;i++) //0-60 { sum+=i; if(i%4 == 0) //每行打印四个 printf("\n"); printf("%4d",sum); } } |
----------------解决方案--------------------------------------------------------