将1~6这6个数字按每行3个进行输出,输出时要求左边的数字比右边的大,上边的数字比下边的大,求出所有可能的填写方法并统计输出排列方法有多少种。

原创 2016年06月01日 00:10:58

for:

#include <stdio.h>
void main()
{
	int i,j,k,l,m,n;
	for(i=1;i<=6;i++)
		for(j=1;j<=6;j++)
			for(k=1;k<=6;k++)
				for(l=1;l<=6;l++)
					for(m=1;m<=6;m++)
						for(n=1;n<=6;n++)
							if(i>j&&j>k&&i>l&&j>m&&k>n&&l>m&&m>n&&j!=l&&k!=m&&k!=l)
							{
								printf("%d %d %d\n%d %d %d\n\n",i,j,k,l,m,n);
							}							
}

while:

#include <stdio.h>
void main()
{
	int i,j,k,l,m,n;
	i=1;
		while(i<=6)
		{
			j=1;
			while(j<=6)
			{
				k=1;
				while(k<=6)
				{
					l=1;
					while(l<=6)
					{
						m=1;
						while(m<=6)
						{
							n=1;
							while(n<=6)
							{
								if(i>j&&j>k&&i>l&&j>m&&k>n&&l>m&&m>n&&j!=l&&k!=m&&k!=l)
								{
									printf("%d %d %d\n%d %d %d\n\n",i,j,k,l,m,n);
								}
								n++;
							}
							m++;
						}
						l++;
					}
					k++;
				}
				j++;
			}
			i++;
		}
}
do-while:

#include <stdio.h>
void main()
{
	int i,j,k,l,m,n;
	i=1;
		do
		{
			j=1;
			do
			{
				k=1;
				do
				{
					l=1;
					do
					{
						m=1;
						do
						{
							n=1;
							do
							{
								if(i>j&&j>k&&i>l&&j>m&&k>n&&l>m&&m>n&&j!=l&&k!=m&&k!=l)
								{
									printf("%d %d %d\n%d %d %d\n\n",i,j,k,l,m,n);
								}
								n++;
							}while(n<=6);
							m++;
						}while(m<=6);
						l++;
					}while(l<=6);
					k++;
				}while(k<=6);
				j++;
			}while(j<=6);
			i++;
		}while(i<=6);
}



相关文章推荐

n数字,分成两行,前面的数字比后面的数大,同一列上的第二行的比第一行同一列的

题目描述: 比如:n数字,分成两行,前面的数字比后面的数大,同一列上的第二行的比第一行同一列的大。列出所有的结果呀 如4个数字 1    2    3                    4...

一个int数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。

一个int数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。 第一个想法就是暴力。时间复杂度O(n^2)。 第二个想法: 利用一个辅助数组,记...
  • imzoer
  • imzoer
  • 2012年10月16日 10:40
  • 1652

1,2,3……,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出所有解。

很多时候要注意思考
  • Ber_Bai
  • Ber_Bai
  • 2017年07月22日 21:32
  • 343

一个int数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它

题目:一个int数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。           能否只用一个额外数组和少量其它空间实现。 分析:最原...

一个int 数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。能否只用一个额外数组和少量其它空间实现。

题目:一个int 数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。能否只用一个额外数组和少量其它空间实现。 分析: 由于是要求数组种所有符合要...
  • w618713
  • w618713
  • 2012年06月07日 13:40
  • 1528

有一篇文章,共有三行文字,每行有80个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。

/* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者: 刘同宾 ...

习题 4.9 给一个不多于5位的正整数,要求:1. 求出它是几位数;2. 分别输出每一位数字;3. 按逆序输出各位数字,例如原数为321,应输出123。

C程序设计 (第四版) 谭浩强 习题5.9 个人设计习题 5.9 给一个不多于5位的正整数,要求:1. 求出它是几位数;2. 分别输出每一位数字;3. 按逆序输出各位数字,例如原数为321,应输出12...

华为2014年机试题1 (输入1--50个数字,求出最小数和最大数的和 )

http://blog.csdn.net/xuzhilong2009/article/details/11751001 //华为2014年机试题1:输入1--50个数字,求出最小数和最大...

java 循环问题 大全 求2~100a之内的素数。求水仙花数:(1~1000)。有1、2、3、4四个数字,输出所有能组成的互不相同且无重复的三位数。打印空心菱形

1.求水仙花数:(1~1000) -->三位的水仙花数一共有多少个 4个   水仙花数:一个数各个位上的立方之和,等于本身。   例如: 153 = 1(3) + 5(3)+3(3) = 1+1...
  • KY1996
  • KY1996
  • 2017年07月13日 21:32
  • 360

输入一个正整数X,在下面的等式1 2 3 4 5 6 7 8 9 = X,左边的数字之间添加+号或者-号,使得等式成立。

#include #include #include using namespace std; /*等式变换 描述:    输入一个正整数X,在下面的等式左边的数字之间添加+号或者...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:将1~6这6个数字按每行3个进行输出,输出时要求左边的数字比右边的大,上边的数字比下边的大,求出所有可能的填写方法并统计输出排列方法有多少种。
举报原因:
原因补充:

(最多只允许输入30个字)