C语言经典100例-第一题(想提升C语言代码能力的看过来!)

持续更新!!!

1.刷题链接和地址:

https://www.runoob.com/cprogramming/c-tutorial.html

菜鸟教程C语言专栏这里的"C经典100例"(看红色框框)

2.第一题解题

由上图读题可知,没有输入,要求将1、2、3、4这四个数字组成不重复的三位数字,例如:123、124、134、132等。。。。。

#include<stdio.h>
 
int main()
{
    int i,j,k;
    printf("\n");
    for(i=1;i<5;i++) // 以下为三重循环
    { 
        for(j=1;j<5;j++)
         {
            for (k=1;k<5;k++) // 确保i、j、k三位互不相同
            { 
                if (i!=k&&i!=j&&j!=k) 
                { 
                    printf("%d,%d,%d\n",i,j,k);
                }
            }
        }
    }
}

如上图,我们定义了三个int类型变量i、j、k,然后,这里使用了三个for循环;

我们先看最里面包着的那个for循环,里面for循环执行了4次,k分别为1、2、3、4,与此同时,外面两层for循环仅执行了一次(因为进入到最里面的for必须先进入外面的for),因此i=1,j=1,最里面的if判断条件不被满足,因为i和j均等于1,因此不会输出111、112、113、114;

最里面的for执行了四次,跳出循环,到中间那层for(执行了一次j=1),现在执行第二次,j=2,然后又进去最里面for执行四次,满足if判断条件,输出123、124,这里不出输出121和122,因为有数字相同,不满足if判断条件

以次类推,当中间的j执行完四次,在此过程中,每执行一次中间的for就会执行四次最里面的for,执行了四次中间的for,便会执行最外面的,每执行一次最外面的for便会执行四次中间的for,因此三个for嵌套一共会执行4*4*4=64次


看了这么久希望你能学到东西,非常感谢你能不厌其烦看到这里,谢谢大家!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值