给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出由它们组成的无重复数字的3位数

C解决·给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出由它们组成的无重复数字的3位数(要求每6个数字为一行,输出最后一个数字后不输出空格)
输入:2
输出:
234 235 243 245 253 254
324 325 342 345 352 354
423 425 432 435 452 453
523 524 532 534 542 543
思路:

1、	可以计算出3个位置能排列出多少个数字,
    4*3*2=24个,所以,当输出24个数字后,
    就不再输出空格
23位数可以用三重for循环实现,
    当3个位置上的数字不相同时,组成
    一个数字,count++,当count%6==0时,输出空格

代码:

#include<stdio.h>
int main()
{
	// 给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出由它们组成的无重复数字的3位数
	int num;
	int digit[4];
	scanf_s("%d", &num);
	int total;
	total = 24; // 4 * 3 * 2 * 1;
	int i, j, k;
	int sum = 0;
	i = num;
	while (i <= num + 3) {
		j = num;
		while (j <= num + 3) {
			k = num;
			while (k <= num + 3) {
				if (i != j && i != k && j != k) {
					sum++;
					printf("%d%d%d", i, j, k);
					if (sum != total ) {
						printf(" ");
					}
					if (sum % 6 == 0) {
						printf("\n");
					}
					
				}
				k++;
			}
			j++;
		}
		i++;
	}
	return 0;
}

运行结果截图:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值