導航:首頁 > 編程語言 > 編程輸出菱形圖案

編程輸出菱形圖案

發布時間:2022-12-16 23:18:37

1. 用C語言編程 輸出*號排列成的菱形

#include<stdio.h>

intdiffabs(inta,intb){//返回a,b差值的絕對值,即|a-b|

return(a>b)?(a-b):(b-a);

}

voidLozenge(unsignedintn,charc){//a為菱形邊長,b為組成菱形的字元

unsignedinti,j,m;

for(i=0;i<n;i++){

m=diffabs(n/2,i);

for(j=0;j<m;j++)printf("");//輸出每行前導空格

for(j=0;j<2*(n/2-m)+1;j++)printf("%c",c);

printf(" ");

}

}

intmain(){

Lozenge(11,'*');

printf(" ");

return0;

}

2. c語言程序設計輸出菱形圖!!!!

此題解法,我將這個菱形放在了一個二維數組中,因為用二維數組可以界定X的邊界,比較方便一點。循環輸出的時候,特別注意循環跳出的條件,你畫個二維數組,體會一下裡面的數學關系,多上機改改代碼,呵呵。要特別注意q的用途哦。

#include<stdio.h>

voidmain()

{

#defineN7//定義二維數組的行和列

inti,j;

chara[N][N];

intq=N/2;//找到數組的中間列

chart,p;//定義輸出字元,t代表X,p代表Y

printf("qingshuruX,Y: ");

scanf("%c,%c",&t,&p);//注意此處輸入的時候,不要忘記「,」了哦

for(i=0;i<N;i++)//將二維數組的值全部先賦值為「空格」

for(j=0;j<N;j++)

a[i][j]='';

for(i=0;i<q;i++)//將菱形一分兩半,這個是上半部分的輸出,以中間列

{

//為開始,向兩邊擴展,為了輸出X,注意i循環到q-1

a[i][q-i]=t;

a[i][q+i]=t;

for(j=(q-i+1);j<(q+i);j++)//以兩邊的X列為邊界,輸出Y

a[i][j]=p;

}

for(i=q;i<N;i++)//這個是下半部分的輸出,i從q開始循環到最後

{

a[i][q-(N-1-i)]=t;//仍然是從中間列開始向兩邊擴散,輸出X

a[i][q+(N-1-i)]=t;

for(j=(q-(N-1-i)+1);j<(q+(N-1-i));j++)//從X邊界開始從做到右輸出Y

a[i][j]=p;

}

for(i=0;i<N;i++)

{

{for(j=0;j<N;j++)

printf("%c",a[i][j]);}

printf(" ");

}

}

我這里輸出的是標準的菱形,中間的Y的個數和你給的不一樣,如果你想要你的那種結果,只需要在輸出Y的時候,將循環的邊界再減一個,就可以了,不過圖形是會變形,不會是菱形了。

上機運行的時候,把這些漢字清理了吧,要不可能編譯出問題,好運~

3. c語言程序設計輸出菱形圖!!!!

此題解法,我將這個菱形放在了一個二維數組中,因為用二維數組可以界定X的邊界,比較方便一點。循環輸出的時候,特別注意循環跳出的條件,你畫個二維數組,體會一下裡面的數學關系,多上機改改代碼,呵呵。要特別注意q的用途哦。
#include<stdio.h>
voidmain()
{
#defineN7//定義二維數組的行和列
inti,j;
chara[N][N];
intq=N/2;//找到數組的中間列
chart,p;//定義輸出字元,t代表X,p代表Y
printf("qingshuruX,Y: ");
scanf("%c,%c",&t,&p);//注意此處輸入的時候,不要忘記「,」了哦
for(i=0;i<N;i++)//將二維數組的值全部先賦值為「空格」
for(j=0;j<N;j++)
a[i][j]='';
for(i=0;i<q;i++)//將菱形一分兩半,這個是上半部分的輸出,以中間列
{
//為開始,向兩邊擴展,為了輸出X,注意i循環到q-1
a[i][q-i]=t;
a[i][q+i]=t;
for(j=(q-i+1);j<(q+i);j++)//以兩邊的X列為邊界,輸出Y
a[i][j]=p;
}
for(i=q;i<N;i++)//這個是下半部分的輸出,i從q開始循環到最後
{
a[i][q-(N-1-i)]=t;//仍然是從中間列開始向兩邊擴散,輸出X
a[i][q+(N-1-i)]=t;
for(j=(q-(N-1-i)+1);j<(q+(N-1-i));j++)//從X邊界開始從做到右輸出Y
a[i][j]=p;
}
for(i=0;i<N;i++)
{
{for(j=0;j<N;j++)
printf("%c",a[i][j]);}
printf(" ");
}
}
我這里輸出的是標準的菱形,中間的Y的個數和你給的不一樣,如果你想要你的那種結果,只需要在輸出Y的時候,將循環的邊界再減一個,就可以了,不過圖形是會變形,不會是菱形了。
上機運行的時候,把這些漢字清理了吧,要不可能編譯出問題,好運~

4. 如何用c語言編程題輸出菱形圖形

#include "stdio.h" void PrintDiamend(int n) { int i,j,k; if(n==0) n=1; for(i=1;i<=n;i++) { for(j=i;j<n;j++) printf(" "); for(k=1;k<i+1;k++) printf("*"); for(k=1;k<i;k++) printf("*"); printf("\n"); } for(i=1;i<n;i++) { for(j=0;j<i;j++) printf(" "); for(k=i;k<n;k++) printf("*"); for(k=i;k<n-1;k++) printf("*"); printf("\n"); } } int main() { PrintDiamend(4); return 0; }

5. VB輸出菱形圖形

1、啟動VB6.0,新建一個標准exe工程。

閱讀全文

與編程輸出菱形圖案相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:382
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151
伊克塞爾文檔怎麼進行加密 瀏覽:893
app轉賬是什麼 瀏覽:163