楊輝三角:想要打印楊輝三角,首先創(chuàng)建一個(gè)數(shù)組arr[10][10];
成都地區(qū)優(yōu)秀IDC服務(wù)器托管提供商(創(chuàng)新互聯(lián)建站).為客戶提供專業(yè)的聯(lián)通機(jī)房服務(wù)器托管,四川各地服務(wù)器托管,聯(lián)通機(jī)房服務(wù)器托管、多線服務(wù)器托管.托管咨詢專線:13518219792楊輝三角放到左邊對(duì)齊就應(yīng)該是這樣的
我們可以知道第0列應(yīng)該全是1;當(dāng)行和列相等的時(shí)候應(yīng)該也是1所有就有
arr[i][0] = 1;
if (i==j)
??? ??? ?{
??? ??? ??? ?arr[i][j] = 1;
??? ??? ?}
并且我們只需要這個(gè)數(shù)組得下半部分上面的不要所以就有 行大于列也就是
void print(int arr[][10])
{
?for (int i = 0; i< 10; i++)
?{
??? ?for (int j = 0; j< 10; j++)
??? ?{
??? ??? ?if (i >= j)
??? ??? ?{
??? ??? ??? ?
??? ??? ??? ?printf("%d ", arr[i][j]);
??? ??? ?}
??? ?}
??? ?printf("\n");
?}
}
最后寫出 打印數(shù)組下半部分代碼 , 這個(gè)代碼使這個(gè)數(shù)組得第一列為1 ,行列相等的時(shí)候也為1?
void print(int arr[][10])
{
for (int i = 0; i< 10; i++)
{
for (int j = 0; j< 10; j++)
{
if (i >= j)
{
printf("%d ", arr[i][j]);
}
}
printf("\n");
}
}
int main()
{
int arr[10][10] = { 0 };
for (int i = 0; i< 10; i++)
{
int j = 0;
arr[i][0] = 1;
for (j = 0; j< 10; j++)
{
if (i==j)
{
arr[i][j] = 1;
}
}
}
print(arr);
}
通過(guò)觀察 我們知道從第2行開始有 arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
最后得代碼是
# includevoid print(int arr[][10])
{
for (int i = 0; i< 10; i++)
{
for (int j = 0; j< 10; j++)
{
if (i >= j)
{
printf("%d ", arr[i][j]);
}
}
printf("\n");
}
}
int main()
{
int arr[10][10] = { 0 };
for (int i = 0; i< 10; i++)
{
int j = 0;
arr[i][0] = 1;
for (j = 0; j< 10; j++)
{
if (i==j)
{
arr[i][j] = 1;
}
if (i >=2 && j >0 && j<= i)
{
arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
}
}
}
print(arr);
}
打印出來(lái)就是這個(gè)樣子
這個(gè)代碼還是有些地方做的不好 比如書代碼沒(méi)有對(duì)齊等問(wèn)題;
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧