【经典100题】题目1

说明:

本栏目来自《C语言经典100题》,由于本文最近学习python编程。考虑到在复习C语言的基础上,学习python,两者皆不误!顺道还能发现一些两种语言的不同!

希望自己能坚持下去!

编程水平优化,目前只考虑实现问题,没有顾及程序的优化问题!欢迎大牛们赐教

by songpl, 2018.11.25,15:01


题目:有“1,2,3,4”这四个数组,能组成多少个互不相同且无重复的三位数,都是多少?


分析:

需要三个嵌套循环(遍历1,2,3,4);

加一个判断(无重复)


c语言代码实现:

#include<stdio.h>

void main()
{
	int i, j, k, a[100], n = 0;
	for (i = 1; i <= 4; i++)
	{
		for (j = 1; j <= 4; j++)
		{
			for (k = 1; k <= 4; k++)
			{
				if (i != j&&i != k&&j != k)//判断三个数互不相同
				{
					a[n] = i * 100 + j * 10 + k;
					n++;
				}
			}
		}
	}

	printf("能组成%d个互不相同且无重复的三位数", n);
	for (i = 0; i < n; i++)
	{
		printf("%d ", a[i]);
	}
	printf("\n");
}

 

运行结果:

能组成24个互不相同且无重复的三位数
123 124 132 134 142 143 213 214 231 234 241 243 312 314 321 324 341 342 412 413 421 423 431 432
请按任意键继续. . .


python语言实现代码:

n=0
a={}
for i in range(1,5):   
    for j in range(1,5):
        for k in range(1,5):                   
            if (i!=j)and(i!=k)and(j!=k):
                n=n+1
                a[n] = i*100+j*10+k

print('能组成互不相同且无重复的三位数的个数是:',n)
print("分别是:",a)

运行结果:

能组成互不相同且无重复的三位数的个数是: 24
分别是: {1: 123, 2: 124, 3: 132, 4: 134, 5: 142, 6: 143, 7: 213, 8: 214, 9: 231, 10: 234, 11: 241, 12: 243, 13: 312, 14: 314, 15: 321, 16: 324, 17: 341, 18: 342, 19: 412, 20: 413, 21: 421, 22: 423, 23: 431, 24: 432}


★finished by songpl,2018.11.26

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值