輸出楊輝三角課程設計問題描述
Ⅰ 編程 輸出一個楊輝三角 求個程序加詳細解釋。
#include<stdio.h>
#defineM10
intmain(void)
{
inta[M][M],i,j;
for(i=0;i<M;i++)
{
for(j=0;j<=i;j++)
{
if(i==j||j==0)
a[i][j]=1;
else
a[i][j]=a[i-1][j]+a[i-1][j-1];
printf("%d",a[i][j]);
}
printf(" ");
}
printf(" ");
}
Ⅱ 大一C語言程序設計,楊輝三角問題
#include <stdio.h>
int a(int rows, int n)
{
float p = 1.0;
for(int count=2;count<=n;count++)
{
p = p*(rows-count+1)/(count-1);
}
return (int)p;
}
int print_triangle(int rows)
{
if(rows<=1)
{
printf("1\n");
}else{
print_triangle(rows-1);
for(int n=1;n<=rows;n++)
{
printf("%d ", a(rows, n));
}
printf("\n");
}
return 0;
}
int main(int argc, char* argv[])
{
print_triangle(10);
return 0;
}
Ⅲ 怎樣用 vfp 程序設計輸出楊輝三角急急急
我給出的圖形是靠左側對齊的。已經上機驗證過了。版
clear
input "輸入行數:權" to n
dime a(n,n)
for i=1 to n
for j=1 to i
if j=1 or i=j
a(i,j)=1
else
a(i,j)=a(i-1,j-1)+a(i-1,j)
endif
??str(a(i,j),3)
endfor
?
endfor
cancel
Ⅳ C語言,輸出楊輝三角
修改:#include"stdio.h"
void main()
{
int a[10][10],i,j;
for(i=0;i<=9;i++){
a[i][0]=1;//原代碼此處需修改,第一位數為1
a[i][i]=1;
}
for(i=1;i=9;i++)
for(j=1;j<i;j++)//原代碼此處需修改
a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i<=9;i++){
for(j=0;j<=i;j++){printf("%5d ",a[i][j]);}
printf("
");
}return 0;}
(4)輸出楊輝三角課程設計問題描述擴展閱讀:
楊輝三角概述:
1.每個數等於它上方兩數之和。
2.每行數字左右對稱,由1開始逐漸變大。
3.第n行的數字有n+1項。
4.第n行數字和為2n。
5.第n行的m個數可表示為C(n-1,m-1),即為從n-1個不同元素中取m-1個元素的組合數。
6.第n行的第m個數和第n-m+1個數相等 ,為組合數性質之一。
7.每個數字等於上一行的左右兩個數字之和。可用此性質寫出整個楊輝三角。即第n+1行的第i個數等於第n行的第i-1個數和第i個數之和,這也是組合數的性質之一。即C(n+1,i)=C(n,i)+C(n,i-1)。
8.(a+b)n的展開式中的各項系數依次對應楊輝三角的第(n+1)行中的每一項。
9.將第2n+1行第1個數,跟第2n+2行第3個數、第2n+3行第5個數……連成一線,這些數的和是第4n+1個斐波那契數;將第2n行第2個數(n>1),跟第2n-1行第4個數、第2n-2行第6個數……這些數之和是第4n-2個斐波那契數。
10將各行數字相排列,可得11的n-1(n為行數)次方:1=11^0; 11=11^1; 121=11^2……當n>5時會不符合這一條性質,此時應把第n行的最右面的數字"1"放在個位,然後把左面的一個數字的個位對齊到十位。
以此類推,把空位用「0」補齊,然後把所有的數加起來,得到的數正好是11的n-1次方。以n=11為例,第十一行的數為:1,10,45,120,210,252,210,120,45,10,1,結果為 25937424601=1110。
Ⅳ 編程序題:輸出楊輝三角形。設計一個窗體,在窗體上有1個文本框和1個命令按鈕。(下面還有)
Private Sub Command1_Click()
Dim a() As Single
n = Val(InputBox("請輸入行數", "楊輝三角內"))
ReDim a(n + 1, n + 1)
Text1.Text = ""
For i = 1 To n
For j = 1 To i
a(i, 1) = 1
a(i, i) = 1
a(i + 1, j + 1) = a(i, j) + a(i, j + 1)
Text1.Text = Text1.Text & Format(a(i, j), "!@@容@@")
Next j
Text1.Text = Text1.Text & vbNewLine
Next i
End Sub
Ⅵ 用c語言編寫程序 輸出楊輝三角
#include<stdio.h>
void main(){
int i,j;
int a[10][10];
for(i=0;i<10;i++){
a[i][0]=1;
for(j=1;j<10;j++){
a[0][j]=0;
}
}
for(i=1;i<10;i++){
for(j=1;j<10;j++){
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
for(i=0;i<10;i++){
for(j=0;j<=i;j++)
{
printf("%4d",a[i][j]);
if(j==i)printf("
");
}
}
}
希望可以幫到你!回望採納答!
Ⅶ 編程題:輸出以下圖案:楊輝三角
#include<stdio.h>
int main()
{ int n,i,j,a[20][20]= {1}; //a[0][0]=1
scanf("%d",&n); //讀入需要計算的行數
for (i=0; i<n; i++) //共輸出回n行
{
for(j=0; j<n-1-i; j++) //輸出每行前面答的空格
printf(" "); //每次輸出2個空格
for(j=0; j<=i; j++) //計算並輸出一行上的i+1個數字
{
a[i][j]=j==0?1:a[i-1][j-1]+a[i-1][j]; //每行首數為1,否則等於"肩上"兩數之和
printf("%4d",a[i][j]); //每個數字輸出佔4列
}
printf(" ");
}
return 0;
}
Ⅷ C語言編程輸出楊輝三角
/*楊輝菱形*/
#include<stdio.h>
main()
{
int i,k,j,a[5][5]={{1},{1,1}}; /* 可改變數組大小來改變菱形的大小 */
for(i=2;i<=5;i++)
{
for(j=0;j<=i;j++)
if((j==0)||(j==i))
a[i][j]=1;
else
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
for(i=0;i<5;i++) /*該循環內輸出正三角容*/
{
printf("\n");
for(k=0;k<=30-2*i;k++)
{
printf(" ");
}
for(j=0;j<=i;j++)
printf("%4d",a[i][j]);
}
for(i=3;i>=0;i--) /*該循環輸出倒三角*/
{
printf("\n");
for(k=0;k<=22+2*(4-i);k++)
{
printf(" ");
}
for(j=0;j<=i;j++)
printf("%4d",a[i][j]);
}
getch();
}
Ⅸ c語言程序輸出楊輝三角形
這樣肯定不對。制
for(i=0;i<10;i++)
{
printf(" ");
for(j=0;j<n&&n<=10;j++)//第一次執行這個循環輸出一個值,就是三角頂。你剛開始就把三角頂搞了10個數,你想想,肯定不對吧。這個地方必須是j<=i
{
printf("%5d",a[i][j]);
n++;
}
}
Ⅹ C++編程輸出楊輝三角的問題!求大神解答!
不知道你是抄怎麼理解楊輝襲三角的,我看了半天,終於看懂你要 做什麼了。
你認為,每一列的數字,等於當前列的列數階乘/當前行階乘,咱們用第三行第二列來看。
2!=2
3!=6
2/6=0.333333
你聲明的還是int型,直接砍掉小數,自然就等於零了。
我理解楊輝三角每一個數應該 是上一行當前列與前一列的和,不知道你這個公式是怎麼來的,我調過來看還是不對