C语言程序设计 | 打印一个n行的菱形
生活随笔
收集整理的這篇文章主要介紹了
C语言程序设计 | 打印一个n行的菱形
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
開始編寫程序前,我們需要先找到菱形的規(guī)律。
1.菱形的行數(shù)k為奇數(shù),除中間一行外上下對(duì)稱,我們可以將中間行歸到上半部分,上半部分行數(shù)為k=k/2+1,下半部分為k=k/2。
2.菱形每一行的*數(shù)量遞增或遞減兩個(gè)。
3.空格數(shù)每一行遞減(遞增)一個(gè),到中間行為0,可知空格數(shù)為 k-(+)當(dāng)前行數(shù)
得出結(jié)論后即可開始編寫代碼
首先聲明變量并讓用戶輸入菱形的行數(shù)
int i,j,z,n,k; printf("請(qǐng)輸入菱形的行數(shù):\n"); scanf("%d",&k); k = k / 2 +1;
上半部分的菱形
for(i=1,n=1; i<= k; i++) {n = 2*i-1;for(j=k-i; j>0; j--){printf(" ");}for(z=0; z< n; z++){printf("*");}printf("\n"); }
當(dāng)上半部分編寫完成后,我們需要將星號(hào)的數(shù)量n減少2,因?yàn)槲覀儗⒅虚g行也歸到了上半部分中。
n-=2;
for(i=0; i<k-1; i++) {for(j=0; j<i+1; j++){printf(" ");}for(z=n-2*i; z>0; z--){printf("*");}printf("\n"); }
下半部分菱形
運(yùn)行結(jié)果
完整代碼:
總結(jié)
以上是生活随笔為你收集整理的C语言程序设计 | 打印一个n行的菱形的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编程计算并输出1~50之间的所有数的阶乘
- 下一篇: 数据结构与算法 | 二分查找