c語言楊輝三角不能用數組做,c語言楊輝三角代碼不用數組

本文目錄一覽:

這個用數組C語言打印楊輝三角,怎麼改為不用數組?

可以不用二維數組,改用一維數組。

如果有改為不用數組,那就使用計算階乘的方法,計算效率較低,而且容易“溢出”不能算得較多的行數。如果要改為能得到用數組同樣的行數,則程序的編寫就要用麻煩的算法。

c語言:不使用數組編寫楊輝三角形10行的遞歸程序

//輸出楊輝三角

# include stdio.h

void main()

{

int yang(int x, int y);

int i, j, k;

for(i = 1; i = 10; i++)//i控制行數

{

for(j = 0; j 10-i; j++)

printf(” “);

for(k = 1; k = i; k++)//y表示這一行中第幾個數

printf(“%4d”, yang(i, k));

printf(“\n”);

}

}

int yang(int x, int y)

{

int z;

if(y == 1 || y == x)  z = 1;

else z = yang(x-1, y-1) + yang(x-1, y);

return z;

}

不知道能不能滿足lz要求。

c語言編程打印楊輝數字金字塔不用數組

#includestdio.h

#define N 10

void main()

{

unsigned int i,j,k;

unsigned int b,c;

for(i=0;iN;i++)

{

for(j=N;ji;j–)

printf(” “);

for(j=0;j=i;j++)

{

b=c=1;

if(j=1)

{

for(k=i-j+1;k=i;k++)

b*=k;

for(k=1;k=j;k++)

c*=k;

}

printf(“%4d”,b/c);

}

printf(“\n”);

}

}

在打印楊輝三角時通常用到楊輝三角的兩個性質。

第一個就是楊輝三角中除了最外層的數為1外,其餘的數都是它肩上兩個數之和。用數組輸出楊輝三角就用這個性質。

第二個性質是楊輝三角的第n行恰好是C(n,0)~C(n,n)。這裡的C表示組合。不用數組輸出楊輝三角就用這個性質。

哪裡不明白可以Hi我。

大學c語言循環章節問題。(不用數組) 編寫程序,輸出楊輝三角形

#include stdio.h

#define N 14

void main()

{

int i, j, k, n=0, a[N][N]; /*定義二維數組a[14][14]*/

while(n=0||n=13){ /*控制打印的行數不要太大,過大會造成顯示不規範*/

printf(“請輸入要打印的行數:”);

scanf(“%d”,n);

}

printf(“%d行楊輝三角如下:\n”,n);

for(i=1;i=n;i++)

a[i][1] = a[i][i] = 1; /*兩邊的數令它為1,因為現在循環從1開始,就認為a[i][1]為第一個數*/

for(i=3;i=n;i++)

for(j=2;j=i-1;j++)

a[i][j]=a[i-1][j-1]+a[i-1][j]; /*除兩邊的數外都等於上兩頂數之和*/

for(i=1;i=n;i++){

for(k=1;k=n-i;k++)

printf(” “); /*這一行主要是在輸出數之前打上空格佔位,讓輸出的數更美觀*/

for(j=1;j=i;j++) /*j=i的原因是不輸出其它的數,只輸出我們想要的數*/

printf(“%6d”,a[i][j]);

printf(“\n”); /*當一行輸出完以後換行繼續下一行的輸出*/

}

printf(“\n”);

}

拓展資料:

C語言是一門通用計算機編程語言,廣泛應用於底層開發。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

儘管C語言提供了許多低級處理的功能,但仍然保持着良好跨平台的特性,以一個標準規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。

二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言制定了一套完整的美國國家標準語法,稱為ANSI C,作為C語言最初的標準。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/243205.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:54
下一篇 2024-12-12 12:54

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變量和數…

    編程 2025-04-29
  • Python導入數組

    本文將為您詳細闡述Python導入數組的方法、優勢、適用場景等方面,並附上代碼示例。 一、numpy庫的使用 numpy是Python中一個強大的數學庫,其中提供了非常豐富的數學函…

    編程 2025-04-29
  • Python返回數組:一次性搞定多種數據類型

    Python是一種多用途的高級編程語言,具有高效性和易讀性的特點,因此被廣泛應用於數據科學、機器學習、Web開發、遊戲開發等各個領域。其中,Python返回數組也是一項非常強大的功…

    編程 2025-04-29
  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在着手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29

發表回復

登錄後才能評論