首先 觀察圖像,可得
可將整個圖分為若行?
每行分成 ?空格(星星前面的) 和星星
共有n行
第i行的空格(星星前的)的數量為n-i-1個 (i=0,1,2,3,4)
.每i行的星星數量為2i+1 (i=0,1,2,3,4)
運行結果和代碼示例

//c?language?
#include<stdio.h>??//預處理頭文件
void?PrintStar(int?n){
????for(int?i=0;i<n;i++)?
????{
????????//?一行一行打印星星
????
????????//打印一行中的空格(星星前的)
????????for(int?j=0;j<n-i-1;j++)??
????????????printf("?");????
????????????
????????//打印一行中的星星????
????????for(int?j=0;j<2*i+1;j++)???
????????????printf("*");?
????????????
????????//打印回車,跳轉下一行????
????????printf("\n");????????????
????}
}
int?main(void){
????int?num;?????//存儲星星的行數
????
????scanf("%d",&num);??//進行輸入,也可以直接賦值???num=5;
????PrintStar(num);???
????
????return?0;
}