- 题目:喜欢ACM的大一新生FYX今天很无聊,他发现自己桌子上有学姐留下的四张神秘的卡片:每张卡片上都有一个数字(数字可能相同),他发现用这四张卡片可以排成很多不同的4位数。FYX希望可以按从小到大的顺序输出这些四位数,亦可以和他一起完成这个任务吗嘛?
- #include <stdio.h>
int main()
{
int a[4],i,j,k,t;
for(i = 0;i < 4;i++){
scanf("%d",&a[i]);
}
for(i = 0;i < 3;i++){
k = i;
for(j = i + 1;j < 4;j++)
if(a[j]<a[k]) k=j;
if(k!=i){
t = a[i];
a[i] = a[k];
a[k] = t;
}
}
for(i = 0;i < 4;i++)
for(j = 0;j < 4;j++){
if(i == j) continue;
for(k = 0;k < 4;k++){
if(k == j||k == i) continue;
for(t = 0;t < 4;t++){
if(t == k||t == j||t == i) continue;
printf("%d ",a[i]*1000 + a[j]*100 + a[k]*10 + a[t]);
}
}
}
return 0;
}
ACM练习题
最新推荐文章于 2018-12-05 20:01:22 发布