C经典程序100例之001
2008-10-08 23:53
417 查看
/*
*题目:有1、2、3、4个数字
*能组成多少个互不相同且无重复数字的三位数?
*都是多少?
*
*解读:
*用1、2、3、4挑出3个组成一个三位数
*且组成这个三位数的数字是各不相等的
*统计出个数 ,并都打印出来
*/
#include <stdio.h>
//#define ALL_NUM /* 启用此句,就可以看到所有的三位数 */
int main()
{
int i,j,k;
int total = 0;
printf("/n");
for(i=1;i<5;i++)
{
for(j=1;j<5;j++)
for(k=1;k<5;k++)
#ifdef ALL_NUM
{
printf("%d,",i*100+j*10+k);
total++;
}
#else
if(i!=j&&j!=k&&k!=i)
{
printf("%d,",i*100+j*10+k);
total++;
}
#endif
printf("/n");
}
printf("total = %d",total);
getch();
}
此程序并不完全符合题目,应该是先统计出个数,再打印出来他们是哪些
所以考虑用数组
先将他们存入数组,然后在打印出来了
先定义数组:
int num[100];
int m;
然后将
printf("%d,",i*100+j*10+k);
替换为
num[total] = i*100+j*10+k;
在输出个数后,把数组打印出来
for(m=0;m<total;m++)
printf("%d,",num[m]);
*题目:有1、2、3、4个数字
*能组成多少个互不相同且无重复数字的三位数?
*都是多少?
*
*解读:
*用1、2、3、4挑出3个组成一个三位数
*且组成这个三位数的数字是各不相等的
*统计出个数 ,并都打印出来
*/
#include <stdio.h>
//#define ALL_NUM /* 启用此句,就可以看到所有的三位数 */
int main()
{
int i,j,k;
int total = 0;
printf("/n");
for(i=1;i<5;i++)
{
for(j=1;j<5;j++)
for(k=1;k<5;k++)
#ifdef ALL_NUM
{
printf("%d,",i*100+j*10+k);
total++;
}
#else
if(i!=j&&j!=k&&k!=i)
{
printf("%d,",i*100+j*10+k);
total++;
}
#endif
printf("/n");
}
printf("total = %d",total);
getch();
}
此程序并不完全符合题目,应该是先统计出个数,再打印出来他们是哪些
所以考虑用数组
先将他们存入数组,然后在打印出来了
先定义数组:
int num[100];
int m;
然后将
printf("%d,",i*100+j*10+k);
替换为
num[total] = i*100+j*10+k;
在输出个数后,把数组打印出来
for(m=0;m<total;m++)
printf("%d,",num[m]);
相关文章推荐
- 经典C程序100例-003
- 经典c程序100例==21--30
- 经典c程序100例(1--10)
- C++经典程序100例(附答案)【1】(希望一些像我一样的新手能够从这些习题中取得进步)
- C++经典程序100例【7】
- java入门程序100例学习笔记(001金字塔)
- 经典c程序100例==1--100——Classic c program 100 = = 1-100
- 经典c程序100例==71--80
- 经典c程序100例
- 经典C程序100例(10-20)
- 经典c程序100例
- C++经典程序100例【8】
- C语言经典例程100例(经典c程序100例)
- 经典c程序100例 1-10
- 经典c程序100例==81--90
- 经典c程序100例==41--50
- [C] C程序100例_001
- C++经典程序100例【2】
- C++经典程序100例【9】
- 经典C程序100例