控制组二面第二题数字组合题解析(菜鸟方法)
题文:
数字组合
描述
输入4个10以内的整数,计算总共能组成多少个互不相同且无重复数字的三位数,并计算出它们的总和
输入
一行,包含4个10以内的整数
输出
共两行
第一行,包含一个整数,代表能组成的三位数的个数
第二行,包含一个整数,代表这些三位数之和
总体思路:
先利用三个变量遍历0到10,将输入的四个数遍历出来,再将有重复的数字去除;计数的话就用个count++啦
#include <stdio.h>
int main ()
{ int a,b,c,d;
int i=0;
int j=0;
int k=0;
//a,b,c,d就是要输入的数,i,j,k就是用来形成那个三位数的//
int count=0;
int q=0;
int sum=0;
scanf("%d %d %d %d",&a,&b,&c,&d);
for (i=0;i<=10;i++)
{for (j=0;j<=10;j++)
{for (k=0;k<=10;k++)
{if(i==a||i==b||i==c||i==d)
{
if(j==a||j==b||j==c||j==d)
{
if(k==a||k==b||k==c||k==d)
{
if(i!=j&&j!=k&&i!=k){
//这里就将有重复的数字去掉//
q=i*100+j*10+k;
sum+=q;
count++;}
}
}
}
}
}
}
printf("%d\n",count);
printf("%d\n",sum);
return 0;
}