您的位置:首页 > 其它

塞子算法 解决 一个经典c 程序

2010-07-30 15:38 204 查看
/*题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?*/
#include <stdio.h>
//单循环算法
int
main(void)
{
int i = 123, n = 0, a , b, c;
for(i = 123; i <= 432 ; i++){
a = i / 100;
b = (i / 10 ) % 10;
c = i % 10;
if((a*b*c == 0)|(a >4)|(b>4)|(c>4)|(a==b)|(a==c)|(b==c)){
continue;
}
n++;
printf("  %d  ", i);
}
printf("/n n = %d /n", n);
}
//常规算法
//int
//main(void)
//{
//	int i , j, k, n = 0;
//
//	for(i=1; i<5 ;i++)
//		for(j=1 ;j<5 ;j++)
//			for (k=1 ; k<5 ; k++)
//			{
//				if(i != k && i!=j && j!=k){
//					n++;
//			        printf(" %d,%d,%d/n",i,j,k);
//				}
//	        }
//
//	printf("n= %d /n", n);
//	return 0;
//}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: