
C语言关于数组的一道题目,有代码,但是看不懂,求帮忙解释一下
#include<stdio.h>intmain(){chara[5]={'*','*','*','*','*'};inti,j,k;charspace='';for(i...
#include <stdio.h>
int main()
{
char a[5]={'*','*','*','*','*'};
int i, j, k;
char space=' ';
for (i=0; i<5; i++)
{
printf("\n");
printf(" ");
for (j=1; j<=i; j++)
printf("%c",space);
for (k=0; k<5; k++)
printf("%c",a[k]);
}
printf("\n");
return 0;
}
目的是输出一个图案
******(分别输出5行)
看不懂代码里定义的 i j k space分别表示什么,求帮忙解释一下 展开
int main()
{
char a[5]={'*','*','*','*','*'};
int i, j, k;
char space=' ';
for (i=0; i<5; i++)
{
printf("\n");
printf(" ");
for (j=1; j<=i; j++)
printf("%c",space);
for (k=0; k<5; k++)
printf("%c",a[k]);
}
printf("\n");
return 0;
}
目的是输出一个图案
******(分别输出5行)
看不懂代码里定义的 i j k space分别表示什么,求帮忙解释一下 展开
2个回答
展开全部
就是变量额。。。
char space=' '; //变量space 初始化为空格 ‘ ’
i 用于循环5次 for (i=0; i<5; i++) //为最大的一个循环
代码里执行完就会输出5行 但也不是楼上说的代表行,非要说代表行的变量也是 i<5里的那个5是表示行的。。。而不是i ,i仅仅是为了完成循环,控制循环的一个变量。
如果这样写
#define LINE 5
for (i=0; i<LINE; i++) 那么LINE就是用于控制行的。。。LINE是几就打印几行
j 也一样,不能说代表空格,打印空格每次循环都不定,怎么代表。。。。
循环体里:
for (j=1; j<=i; j++) // 以i为判断 做循环,每次大循环里,都会执行i次该子循环。具体i值取决于当前循环为第几次大的循环。i=1第一次则执行一次,i=2第二次则这里循环两次,i=3第3次则循环3次
printf("%c",space);
//所完成功能: 依次,i=1时,输出一个空格
/*for (j=1; j<=2; j++)*/ i=2时候,循环输出两个空格
/*for (j=1; j<=3; j++)*/ i=3时候,循环输出3个空格
....... ........
for (k=0; k<5; k++) //同上,只不过判断条件是k<5, 而不在是 i ,即每次大循环里 固定执行5次该子循环,不像上面的子循环,具体循环次数和i有关。
printf("%c",a[k]); // 每次大循环里,都会子循环输出5个元素,a[0]到a[4]; 即输出 5个 *
char space=' '; //变量space 初始化为空格 ‘ ’
i 用于循环5次 for (i=0; i<5; i++) //为最大的一个循环
代码里执行完就会输出5行 但也不是楼上说的代表行,非要说代表行的变量也是 i<5里的那个5是表示行的。。。而不是i ,i仅仅是为了完成循环,控制循环的一个变量。
如果这样写
#define LINE 5
for (i=0; i<LINE; i++) 那么LINE就是用于控制行的。。。LINE是几就打印几行
j 也一样,不能说代表空格,打印空格每次循环都不定,怎么代表。。。。
循环体里:
for (j=1; j<=i; j++) // 以i为判断 做循环,每次大循环里,都会执行i次该子循环。具体i值取决于当前循环为第几次大的循环。i=1第一次则执行一次,i=2第二次则这里循环两次,i=3第3次则循环3次
printf("%c",space);
//所完成功能: 依次,i=1时,输出一个空格
/*for (j=1; j<=2; j++)*/ i=2时候,循环输出两个空格
/*for (j=1; j<=3; j++)*/ i=3时候,循环输出3个空格
....... ........
for (k=0; k<5; k++) //同上,只不过判断条件是k<5, 而不在是 i ,即每次大循环里 固定执行5次该子循环,不像上面的子循环,具体循环次数和i有关。
printf("%c",a[k]); // 每次大循环里,都会子循环输出5个元素,a[0]到a[4]; 即输出 5个 *
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询