欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

C语言经典例1-无重复数字的三位数

发布时间:2025/6/17 编程问答 42 豆豆
生活随笔 收集整理的这篇文章主要介绍了 C语言经典例1-无重复数字的三位数 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

目录

  • 1 题目
  • 2 分析
  • 3 实现
  • 4 运行结果

1 题目

有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

2 分析

本题的本质是排列组合问题,抽象的描述就是一共有3个空位,而有4个数,要将这4个数填入到空位中,且每个数在一次组合的过程中只能使用一次,求能组合成多少种不同的数。

  • 类似于这种问题可以直接使用for循环嵌套,本题是组合成三位数,那么需要三层for循环嵌套,由于每个位置可选择的数字有4个(即1,2,3,4),所以每层循环的始末为1和4
  • 使用嵌套循环,由于每次循环都会有变量改变,所以组合成的数字必定是互不相同的,但是其中可能有重复的数字,所以需要加上一个if判断语句来筛选其中无重复的

3 实现

#include<stdio.h> int main() {for (int i = 1; i <= 4; i++) for (int j = 1; j <= 4; j++) for (int k = 1; k <= 4; k++) if (i != j && i != k && j != k) { // 判断这个三位数无重复数字printf("%d%d%d\n", i, j, k);}return 0; }

4 运行结果

123 124 132 134 142 143 213 214 231 234 241 243 312 314 321 324 341 342 412 413 421 423 431 432

总结

以上是生活随笔为你收集整理的C语言经典例1-无重复数字的三位数的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。