关于循环的嵌套
1.输出一个矩阵
#include <stdio.h>
int main(int argc,char *argv[])
{
int i,j; //循环变量
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
printf("*\t");
printf("\n");
}
return 0;
}
2.输出一个三角形
#include <stdio.h>
int main(void)
{
int i, j;
for (i = 0; i < 5; i++)
{
for (j =1 + i; j > 0; j--)
printf("$\t");
printf("\n");
}
return 0;
}
第一列为F,每行字母数递增,字母大小递减
#include <stdio.h>
int main(void)
{
int i, j;
char ch[27] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (i = 5; i >=0; i--)
{
for (j = 5; j >= 0 + i; j--)
printf("%c", ch[j]);
printf("\n");
}
return 0;
}
标准答案
#include <stdio.h>
int main(void)
{
int i, j;
char c;
for (i = 1; i < 7; i++)
{
for (j = 0, c = 'F'; j < i; j++,c--)
printf("%c", c);
printf("\n");
}
return 0;
}
按字母顺序输出一个三角形,字母数量依次递增
#include <stdio.h>
int main(int argc, char* argv[])
{
int i, j;
char ch[27] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for(i = 1; i <7; i++)
{
for (j = i*(i-1)/2; j <(i+1)*i/2 ; j++)
//根据第一列和每列最后一个字母在数组里对应的位置,
//寻找对应的数学关系
printf("%c", ch[j]);
printf("\n");
}
return 0;
}
标准答案
#include <stdio.h>
int main(void)
{
int i, j;//循环变量
char c = 'A';
for (i = 1; i <= 6; i++)
{
for (j = 0; j < i; j++, c++)
printf("%c", c);
printf("\n");
}
return 0;
}
输出一个金字塔,使两侧对称
#include <stdio.h>
int main(void)
{
int i, j, k;//循环变量
char ch[27] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (i = 0; i < 5; i++)
{
for (j = 4-i; j > 0; j--) //输出左侧空格
printf(" ");
for (k = 0; k < i + 1; k++) //输出左侧字母
printf("%c", ch[k]);
for (k = i-1; k >= 0; k--) //输出右侧字母
printf("%c",ch[k]);
printf("\n");
}
return 0;
}