“真正的才智是刚毅的志向。”
参考:菜鸟教程,C语言经典案例100例(我把这些翻译成C++\C#,供自己、大家一起学习,每天一例)
题目:有1、2、3、4,能组成多少个互不相同且无重复数字的三位数?都是多少?
C++语言篇(1)
#include <iostream> using namespace std; int main() { int i,j,k,n=5;//1~n范围内的组合,现在n=5,则:1,2,3,4,5组合三位数 for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { for(k=1;k<=n;k++) { if( (i!=j) && (i!=k) && (j!=k))//建议代码必须保持整洁,从细节入手,方可成功 { cout<<i<<j<<k<<endl; } } } } return 0; }
C++语言篇(2)优化(网友提议)
#include <iostream> using namespace std; int main() { int i,j,k,n=5;//1~n范围内的组合,现在n=5,则:1,2,3,4,5组合三位数 //建议代码必须保持整洁,从细节入手,方可成功 for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { if(i==j)//(百位==个位)结束 { continue; } for(k=1;k<=n;k++) { if((i==k) || (i==j))//个位==十位 或 个位==百位 结束 { continue; } cout<<i<<j<<k<<endl; } } } return 0; }
谢谢大家的欣赏哈,本章结束!还会有再续!
ASV大宝