C语言编辑图形
发布网友
发布时间:2022-05-01 19:51
我来回答
共1个回答
热心网友
时间:2022-06-22 06:25
for函数解释:
例如for(i=1;i<=n-1;i++)这个循环条件,i=1是循环开始状态,i<=n-1是维持循环条件,i++是每次循环后改变的状态,i=1循环到i=n-1,每次i的值自加,即i=1,i=2,i=3.....i=n-2,n=n-1依次循环,共循环n-1次
主函数代码注释:
#include <stdio.h>
main()
{
int i,j,n; //定义整形参数i,j,n
scanf("%d",&n); //输入整形参数n的值
for(i=1;i<=n-1;i++) //从i=1循环到i=n-1,每次i的值自加(即i=1,i=2,i=3...i=n-1),循环n-1次
{
for(j=1;j<=i;j++) printf("#"); //从j=1循环到j=i,每次j的值自加,循环i次,每次循环输出一个“#”,这行代码功能是输出i个#,以下类似
for(j=1;j<=2*(n-i)-1;j++) printf(" "); //这行代码功能是输出2(n-i)-1个空格
for(j=1;j<=i;j++) printf("#"); //这行代码功能是输出i个#
printf("\n"); //换行
}
for(i=1;i<=2*n-1;i++) printf("#"); //这行代码功能是输出2(n-1)个#
printf("\n"); //换行
}
分析:
以输入5为例,首先我们输入n的值为5
for(i=1;i<=n-1;i++) 此循环循环n-1次,即循环4次
每个循环输出i个#,2(n-i)-1个空格,再输出i个#,之后换行
4次循环i的值分别为1,2,3,4,这便输出了前4行,循环退出
之后for(i=1;i<=2*n-1;i++) printf("#");输出2(n-1)个#,即是9个#,形成第五行
之后换行,主函数结束