|
#include<stdio.h>
void main()
{
//這個(gè)輸出圖案的題有個(gè)笨方法,就是直接輸出
//還有可以嘗試一下循環(huán)
//升級(jí)版程序是,只要給出最長(zhǎng)一行的奇數(shù)字符數(shù),就能直接會(huì)出菱形圖案
//我發(fā)現(xiàn)一個(gè)規(guī)律,中間多少個(gè)字符,就有多少行
int n,m,a,b;
int p,q;//空格數(shù),還有字符數(shù)
printf("please input a odd number:\n");
scanf("%d",&m);//又忘了加&
//現(xiàn)在需要一個(gè)統(tǒng)計(jì)空格數(shù)的變量,一次加一,還有統(tǒng)計(jì)字符數(shù)的變量,一次加二
//輸出一個(gè)正三角后還得再來個(gè)倒三角
n=(m-1)/2;
for(p=n,q=1;p>=0;p--,q+=2)
{
for(a=p;a>0;a--)//輸出空格
{printf(" ");}//看來要放技能了,循環(huán)嵌套
for(b=q;b>0;b--)//這里還需要中間變量,否則pq的值就變了
{printf("*");}
printf("\n");//換行
}
//接下來是倒三角
for(p=1,q=m-2;p<=n;p++ ,q-=2)
{
for(a=p;a>0;a--)//輸出空格
{printf(" ");}
for(b=q;b>0;b--)
{printf("*");}
printf("\n");//換行
}
}
|
|