c语言左对齐_C语言经典100题(9)

1

上期答案揭晓

首先给大家看看上一篇文章C语言经典100题(8)中第三部分编程题的答案:

#includeint main(){    int i,j,result;    printf("\n");    for (i=1;i<10;i++)    {        for(j=1;j<=i;j++)        {            result=i*j;            printf("%d*%d=%-3d",i,j,result); /*-3d表示左对齐,占3位*/        }    printf("\n"); /*每一行后换行*/    }}

以上实例输出结果为:

1*1=1 2*1=2  2*2=4 3*1=3  3*2=6  3*3=9 4*1=4  4*2=8  4*3=12 4*4=165*1=5  5*2=10 5*3=15 5*4=20 5*5=256*1=6  6*2=12 6*3=18 6*4=24 6*5=30 6*6=367*1=7  7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=498*1=8  8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=649*1=9  9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

2

今日知识分享

嵌套循环

C 语言允许在一个循环内使用另一个循环,下面演示几个实例来说明这个概念。

语法

C 语言中 嵌套 for 循环 语句的语法:
for (initialization; condition; increment/decrement){    statement(s);    for (initialization; condition; increment/decrement)    {        statement(s);        ... ... ...    }    ... ... ...}
流程图:

ab0f43ac2259df1d3b2ca79f39f5ec48.png

C 语言中 嵌套 while 循环 语句的语法:
while (condition1){    statement(s);    while (condition2)    {        statement(s);        ... ... ...    }    ... ... ...}

流程图:

da5f8c03d1d2ac38a7f86b04fb432895.png

C 语言中 嵌套 do...while 循环 语句的语法:

do{    statement(s);    do    {        statement(s);        ... ... ...    }while (condition2);    ... ... ...}while (condition1);

流程图:

d4477ada72d64132b8678c9fb85d9cff.png

关于嵌套循环有一点值得注意,您可以在任何类型的循环内嵌套其他任何类型的循环。比如,一个 for 循环可以嵌套在一个 while 循环内,反之亦然。

实例

for 嵌套实例

#include int main (){   /* 局部变量定义 */   int i, j;   for(i=2; i<100; i++) {      for(j=2; j <= (i/j); j++)        if(!(i%j)) break; // 如果找到,则不是质数      if(j > (i/j)) printf("%d 是质数\n", i);   }   return 0;}
当上面的代码被编译和执行时,它会产生下列结果:
2 是质数3 是质数5 是质数7 是质数11 是质数13 是质数17 是质数19 是质数23 是质数29 是质数31 是质数37 是质数41 是质数43 是质数47 是质数53 是质数59 是质数61 是质数67 是质数71 是质数73 是质数79 是质数83 是质数89 是质数97 是质数

while 嵌套实例

#include int main(){    int i=1,j;    while (i <= 5)    {        j=1;        while (j <= i )        {            printf("%d ",j);            j++;        }        printf("\n");        i++;    }    return 0;}
当上面的代码被编译和执行时,它会产生下列结果:
11 21 2 31 2 3 41 2 3 4 5

do-while 嵌套实例

#include int main(){    int i=1,j;    do    {        j=1;        do        {            printf("*");            j++;        }while(j <= i);        i++;        printf("\n");    }while(i <= 5);    return 0;}

当上面的代码被编译和执行时,它会产生下列结果:

***************

3

今日经典编程题

题目:要求输出国际象棋棋盘。

程序分析:国际象棋棋盘由64个黑白相间的格子组成,分为8行*8列。用i控制行,j来控制列,根据i+j的和的变化来控制输出黑方格,还是白方格。

各位有兴趣的读者可以自行设计程序实现,我将在下一篇文章揭晓该题的代码实现供参考!

扫码关注我,手把手带你撸代码 14dffdfafe5b74742d44de801dbbf40d.png

如果你觉得文章让您增长了知识,

请点击右下方的“在看

   80affa99dc12168ec20b525d63427405.gif
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值