这个小程序看不懂,哪位高手能帮小弟我解释一下循环部分
这个小程序看不懂,谁能帮我解释一下循环部分。
#include <stdio.h>
main()
{
int n,i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{ for(j=1;j<=n+i-1;j++)
if(j<=n-i) printf(" ");
else printf("*");
printf("\n");
}
}
------解决方案--------------------
代码功能归根结底不是别人帮自己看或讲解或注释出来的;而是被自己静下心来花足够长的时间和精力亲自动手单步或设断点或对执行到某步获得的中间结果显示或写到日志文件中一步一步分析出来的。
提醒:再牛×的老师也无法代替学生自己领悟和上厕所!
单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。
------解决方案--------------------
你可以跟着程序在纸上把输出显示出来,就会发现 n-i< j<n+i 输出* ,j<=n-i输出空格。很多问题 知道开始也就可知结果了。这种问题,只看不动手很难看出个所以然,加油
#include <stdio.h>
main()
{
int n,i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{ for(j=1;j<=n+i-1;j++)
if(j<=n-i) printf(" ");
else printf("*");
printf("\n");
}
}
------解决方案--------------------
代码功能归根结底不是别人帮自己看或讲解或注释出来的;而是被自己静下心来花足够长的时间和精力亲自动手单步或设断点或对执行到某步获得的中间结果显示或写到日志文件中一步一步分析出来的。
提醒:再牛×的老师也无法代替学生自己领悟和上厕所!
单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。
------解决方案--------------------
你可以跟着程序在纸上把输出显示出来,就会发现 n-i< j<n+i 输出* ,j<=n-i输出空格。很多问题 知道开始也就可知结果了。这种问题,只看不动手很难看出个所以然,加油