1. 用數字1234能組成多少個可以重復的三位數
可以重復的話是4*4*4=64種,不能重復的話4*3*2=24種
即4中取3的任意排列,A(4,3)=4!/(4-3)!=24,
因此一共可以組成24個不重復的數字。
首先選定百位,共有4個選擇,再選十位,還剩3個選擇,再選個位,還剩2個選擇,因此共有4×3×2=24種
(1)c語言1234組成三位數多少組擴展閱讀:
從n個不同元素中可重復地選取m個元素。按照一定的順序排成一列,稱作從n個元素中取m個元素的可重復排列。當且僅當所取的元素相同,且元素的排列順序也相同,則兩個排列相同。
排列可分選排列與全排列兩種,在從n個不同元素取出m個不同元素的排列種,當m<n時,這個排列稱為選排列;當m=n時,這個排列稱為全排列。n個元素的全排列的個數記為Pn。
2. 用C語言編程求1234四個數能組成多少互不相同且不重復的三位數
三位數有三個位置,每一個位置看作一個變數,假設為i、j、k,
互不相同且不重復的三位數,即i不等於j且j不等於k且i不等於j,用C語言邏輯表達式描述為:
i!=j&&j!=k&&i!=k
三個位置,每一個位置有1、2、3、4,四種可選值,因此其排列數為4^3 = 64種排列組合方法,三個位置互不相同,按分步乘法原理得一共有4x3x2 = 24種排列方法。編寫示例代碼如下:
#include<stdio.h>
intmain()
{
inti,j,k,n=0;//n用於統計個數
for(i=1;i<5;i++)
for(j=1;j<5;j++)
for(k=1;k<5;k++)
//保證三位數不重復
if(i!=j&&i!=k&&j!=k)
{
n++;
printf("%d%d%d",i,j,k);
if(n%4==0)
printf(" ");
}
printf(" 一共:%d ",n);
return0;
}
3. 怎樣用C語言編程 有1,2,3,4四個數字,能組成多少個互不相同且不重復的三位數都是多少
#include<stdio.h>
int main()
{
int a[4],sum=0;
for(int i=0;i<4;i++)
scanf("%d",&a[i]);
for(int i=0;i<4;i++)
for(int j=0;j<4;j++)
for(int k=0;k<4;k++)
if(a[i]!=a[j]&&a[i]!=a[k]&&a[j]!=a[k])
{
printf("%d %d %d ",a[i],a[j],a[k]);
sum++;
}
printf("共%d種",sum);
return 0;
}
4. 有1234四個數字,能組成多少個互不相同且無重復數字的三位數都是多少要用C語言做啊,謝謝各位了
#include "stdio.h"
main()
{
int i,j,k,sum=0;
for(i=1;i<=4;i++)
for(j=1;j<=4;j++)
for(k=1;k<=4;k++)
{
if(i!=j&&i!=k)
{
printf("%d%d%d ",i,j,k);
sum++;
}
}
printf("\n");
printf("sum=%d",sum);
}
5. 數字組成三位數,數字1234可組成多少個三位數
一,數字不重復:
1,不含0
A(4,3)=24種
2,含0
3*A(3,2)=18種
二,數字可重復
1,不含0
4*4*4=64種
2,含0
3*4*4=48種
(5)c語言1234組成三位數多少組擴展閱讀
兩個常用的排列基本計數原理及應用
1、加法原理和分類計數法:
每一類中的每一種方法都可以獨立地完成此任務;兩類不同辦法中的具體方法,互不相同(即分類不重);完成此任務的任何一種方法,都屬於某一類(即分類不漏)。
2、乘法原理和分步計數法:
任何一步的一種方法都不能完成此任務,必須且只須連續完成這n步才能完成此任務;各步計數相互獨立;只要有一步中所採取的方法不同,則對應的完成此事的方法也不同。
6. 由1234 可組成多少個不重復三位數
24個
由1234 可組成多少個不重復三位數,就是考查的全排列A44。
計算可得:A44=24
123 132 124 142 134 143
213 231 214 241 234 243
312 321 342 324 314 341
412 421 431 413 423 432
(6)c語言1234組成三位數多少組擴展閱讀:
從n個不同元素中可重復地選取m個元素。不管其順序合成一組,稱為從n個元素中取m個元素的可重復組合。當且僅當所取的元素相同,且同一元素所取的次數相同,則兩個重復組合相同。
排列組合計算方法如下:
排列A(n,m)=n×(n-1).(n-m+1)=n!/(n-m)!(n為下標,m為上標,以下同)
組合C(n,m)=P(n,m)/P(m,m) =n!/m!(n-m)!;
例如:
A(4,2)=4!/2!=4*3=12
C(4,2)=4!/(2!*2!)=4*3/(2*1)=6
7. 1234這四個數,可以組成多少組三位數組合
64種。
分析:
首先從百位開始,四個數字有4種選法,十位有4種選法,個位有4種選法,根據乘法原理得出共有4×4×4=64種方法。
(7)c語言1234組成三位數多少組擴展閱讀:
從n個不同元素中可重復地選取m個元素。不管其順序合成一組,稱為從n個元素中取m個元素的可重復組合。當且僅當所取的元素相同,且同一元素所取的次數相同,則兩個重復組合相同。
排列組合計算方法如下:
排列A(n,m)=n×(n-1).(n-m+1)=n!/(n-m)!(n為下標,m為上標,以下同)
組合C(n,m)=P(n,m)/P(m,m) =n!/m!(n-m)!;
例如:
A(4,2)=4!/2!=4*3=12
C(4,2)=4!/(2!*2!)=4*3/(2*1)=6
8. c語言:有1、2、3、4個數字,能組成多少個互不相同且無重復數字的三位數都是多少
//注意一下for語句的語法
#include<stdio.h>
void main()
{
int i,j,k,n=0;
for(k=1;k<5;k++)
for(j=1;j<5;j++)
{
if(j==k)
continue;
for(i=1;i<5;i++)
{
if((i==k)||(i==j))
continue;
n++;
printf(
9. 用C語言編程求1234四個數能組成多少互不相同且不重復的三位數不用循環語句 有沒有其他方法求大神!
#include<stdio.h>
voidEnumNumbers(int*numbers,intlevel)
{
inti,j;
boolflag;
for(i=1;i<=4;i++)
{
flag=false;
for(k=0;k<level;k++){if(numbers[k]==i){flag=true;break;}}
if(flag){continue;}
numbers[level]=i;
if(level==2)
{
for(j=0;j<3;j++)
printf("%d",numbers[j]);
printf(" ");
}
else
{
EnumNumbers(numbers,level+1);
}
}
}
voidmain()
{
intnumbers[4]={0};
intlevel=0;
EnumNumbers(numbers,level);
}
10. C語言有1、2、3、4個數字,能組成多少個互不相同且無重復數字的三位數
百位數有3種取值可能,互不重復,十位數就只有2種可能了,個位則只有一種可能,所以總共有3x2x1共6種。根據上述思路,用C編程可用三重for嵌套循環完成。代碼如下:
#include"stdio.h"
intmain(intargc,char*argv[]){
inti,j,k;
printf("Canbecomposedof%dsuchnumber,theyare: ",3*2);
for(i=1;i<=3;i++)//百位有1,2,3等3種選擇
for(j=1;j<=3;j++)
if(j!=i)//十位不等於百位數字時才考察個位,否則另選十位數
for(k=1;k<=3;k++)
if(k!=j&&k!=i)//個位必須與百位和十位都不同
printf("%4d",i*100+j*10+k);//輸出
printf(" ");
return0;
}
運行結果如下: