九九乘法表

九九乘法表

打印“九九乘法表”。

刚开始拿到这个的时候,我以为,就这样,这样,那样。。。就好了。但是事实好像没有我想的那么简单。

首先,我们看看效果图吧。

看起来很简单,让我们来分析一下需要实现的点吧。

需求分析

1.首先,肯定是计算出1*9~9*9

2.对齐,一个小程序做出来肯定是需要有美观性的。

需求很少,那我们接着来一步一步实现吧。

实现方法

首先,计算出1*9~9*9我们最先想到的肯定就是循环,两重循环嵌套,外边的循环数值不变,里边的边,重复9次这种循环,即可得到1*9~9*9的值。

       while (i<=n)
    {
        for (j = 1; j <= i; j++) {
            printf("%d * %d= %d", j, i, i * j);
         }
        i++;
        printf("\n");
    }

实现这个循环有两个需要注意的点,一个是for循环中,j<=i而不是i<=n;第二个需要注意的点就是printf语句中,j跟i的位置是需要互换位置的,自己修改下位置看看可能比我口述的效果来的好。

这样基本实现了1*9~9*9的值了,但是,效果是什么样的呢?

很不美观,有得数值靠的太近了。那么要怎么改进呢?我们可以用if语句对i*j的结果进行判断。这边我们直接上代码吧。

    if (i * j < 10) {
                printf("   "); //三个空格
            } else {
                printf("  "); //两个空格
            }

 经过简单的判断语句,虽然很笨,但是可以很大程度上对程序进行美化,大家看加入判断后的效果图。

效果还行,而且也实现了我们的功能,全部代码如下:


int main()
{
    int n = 9;
    int i=1, j=1;
    while (i<=n)
    {
        for (j = 1; j <= i; j++) {
            printf("%d * %d= %d", j, i, i * j);
            if (i * j < 10) {
                printf("   ");
            } else {
                printf("  ");
            }
         }
        i++;
        printf("\n");
    }
    return 0;
}

用的代码跟原理都很简单,注意的点也不多。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值