#include<stdio.h>
int main()
{
int i,j;
char ch='F';
for(i=0;i<6;i++)
{
for(j=0;j<i+1;j++)
printf("%c",ch-j);
printf("\n");
}
return 0;
}
i=0,<6,为真,进入内循环,内循环为真,打印字符F,然后第二次循环在到这里时,我以为只会打印字符D,为什么是FD呢?
#include<stdio.h>
int main()
{
int i,j;
char ch='F';
for(i=0;i<6;i++)
{
for(j=0;j<i+1;j++)
printf("%c",ch-j);
printf("\n");
}
return 0;
}
i=0,<6,为真,进入内循环,内循环为真,打印字符F,然后第二次循环在到这里时,我以为只会打印字符D,为什么是FD呢?
F //i=0, j=0;j<i+1=1 ==>ch-0 = F
FE //i=1, j=0 ==>ch-0=F, j=1<i+1=2 ==> ch-1 = E ,j=2<i+1不成立,printf("\n")
FED //i=2, j=0 ==>ch-0=F, j=1<i+1=3 ==> ch-1 = E, j=2<i+1=3 ==>ch-2 = D, j=3<i+1=3不成立,printf("\n")
FEDC //i=3, j=0...... j=3<i+1=4 ==>ch-3 = C, j=4<i+1=4不成立,printf("\n")
FEDCB //i=4, j=0...... j=4<i+1=5 ==>ch-4 = B, j=5<i+1=5不成立,printf("\n")
FEDCBA //i=5, j=0...... j=5<i+1=6 ==>ch-5 = A, j=6<i+1=6不成立,printf("\n")