复利计算公式推导过程:把26个字母按每3个排一种组合,总共有多少种组合,打印出来,程序怎么写?

来源:百度文库 编辑:神马品牌网 时间:2024/04/29 09:30:34
问下:把26个字母按每3个排一种组合,总共有多少种组合,打印出来,程序怎么写?
没有得到满意答案,55555
自己已经试出来了:
程序是:
<?
/*
************************************************************

名 称:26个字母按每3个一组,打印出所有组合结果

编 写:Kireii.org

日 期:2006-04-02

************************************************************
*/
$a = 1;
$b = 1;
$c = 1;

function abc()
{
global $a,$b,$c;
if ($a == 26 & $b == 26 & $c > 26) exit;
if ($c > 26)
{
$b = $b + 1;
$c = 1;
if ($b > 26)
{
$a = $a + 1;
$b = 1;
}
}
}

for ($c=1;$c<=27;$c++)
{
abc();
echo chr($a + 96).chr($b + 96).chr($c + 96)."<br>";
}
?>

题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去
掉不满足条件的排列。
2.程序源代码:
main()
{
int i,j,k;
printf("\n");
for(i=1;i<5;i++) /*以下为三重循环*/
for(j=1;j<5;j++)
for (k=1;k<5;k++)
{
if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/
printf("%d,%d,%d\n",i,j,k);
}
}
你仿照着自己改吧。

#include<stdio.h>
void main()
{
char i,j,k;
long n;
n=0;
for(i='a';i<='z';i++)
for(j=i+1;j<='z';j++)
for(k=j+1;k<='z';k++)
if(i!=j &&j!=k && i!=k)
{
n++;
printf("\n%c%c%c",i,j,k);
}
printf("%ld",n);
}
调试通过...2600个..

<%
tx=""
Redim a(25)
for i=0 to 25
a(i)=(97+i)
next
m=0
for i=0 to 25
for j=0 to 25
for k=0 to 25
if a(i)<>a(j) and a(i)<>a(k) and a(j)<>a(k) then tx=tx&chr(a(i))&chr(a(j))&chr(a(k))&chr(32):m=m+1
next
next
next

%>
<br>
<%=tx%>
<%=m%>
结果15600

(26!)/(23!)/(3!)=2600种