C语言循环控制语句提供了 while语句、do-while语句和for语句来实现循环结构。
在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少CPU跨越循环层的次数。
一个循环体内又包含另一个完整的循环结构
三种循环可互相嵌套,层数不限
外层循环可包含两个以上内循环,但不能相互交叉
案例:99乘法表!
#include<stdio.h>
int main()
{
int a;
int b;
for(a=1;a<=9;a++) //这里第一次循环进入
{
for(b=1;b<=a;b++) //这里控制循环次数,始终保持外处循环比内循环多一次,从而实现梯形
{ int c=a*b;
printf("%d*%d=%d ",a,b,c) ;
}
printf("\n");
}
}
同理,案例二:
#include<stdio.h>
int main()
{
int a;
int b;
int c;
int d;
printf("请输入个数:\n",a);
scanf("%d",&a);
for(b=1;b<=a/2+1;b++)
{
; for(d=1;d<=a-b;d++)
{
printf(" ");
}
for(c=1;c<=2*b-1;c++)
{
printf("*");
}
printf("\n");
}
for(b=a/2;b>=1;b--)
{
; for(d=1;d<=a-b;d++)
{
printf(" ");
}
for(c=1;c<=2*b-1;c++)
{
printf("*");
}
printf("\n");
}
}
找到其中空格规律和星星个数规律。用循环镶嵌便能实现!