Ⅰ 誰能解釋下金字塔圖案的c語言程序代碼
/*
2013年12月29日 18:33:34
目的:金字塔
*/
#include<stdio.h>
int main(void)
{
int i, j, k;
for(i=1; i<=5; i++) //構建一個五行的金字塔
{
for(j=1; j<=5-i; j++) //這里的j是控制每行的空格個數,第一行就輸入5-1個空格,以此類推
printf(" ");
for(k=1; k<=2*i-1; k++) //這里的k是控制每行星號的輸出個數,就是第一行輸出2*1-1個,第二行輸出2*2-1個星號,以此類推
printf("*");
printf("\n"); //每行列印星號完了後換行,來重新開頭列印第二層、第三層、第四層、第五層金字塔
}
return 0;
}
Ⅱ C語言話金字塔
列印一行5顆星你會不?(*****)
for(i=1; i<=5;i++) // 循環列印5顆星
{ prinft("*"); }
--------------------------------------------------
列印下面這張圖你會不?(5行5顆星)就是在上面的基礎上在來一個循環
for(j=1;j<=5;j++) //外層循環
{
for(i=1; i<=5;i++) // 循環列印5顆星
{ prinft("*"); }
printf("\n");
}
-----------------------------------------------------
現在說你的圖
其實就是把一部分星星換成空格列印而已。所以,上一步的外層循環內 要分兩步:列印空格+列印5顆星(+列印回車)
代碼就是你給的那個,我不重復了。至於裡面的數量關系的規律,你可以從簡單到復雜的琢磨下就是了
是否可以解決您的問題?
Ⅲ C語言金字塔
#include"stdio.h"
voidmain()
{
charzm[26]={'A','B','C','D','E','F','G','H','I','J','K','L','M',
'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
inti,j,k=0;
for(i=0;i<26;i++)
{
for(j=25-i;j>=0;j--)
printf("");
for(j=0;j<=i;j++)
{
printf("%c",zm[j]);
if(j<i)
printf("_");
}
printf(" ");
}
}
運行結果如圖所示
Ⅳ 怎麼用c語言輸出金字塔圖形
用c語言輸出金字塔圖形程序如下:
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
void main(){
char a;
int i,j,k,l,m,temp;
scanf("%c",&a);
while(isalpha(a))
{
temp=toupper(a)-'A'+1;
for(i=1;i<=temp;i++)
{
for(j=1;j<=temp-i;j++)
printf(" ");
for(k=0;k<i;k++)
printf("%c",'A'+k);
for(l=i;l>0;l--)
{
if(l==1) break;
else printf("%c",'A'+l-2);
}
for(m=1;m<=temp-i;m++)
printf(" ");
printf("
");
}
break;
}
system("pause");}
拓展資料:
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器以及超級電腦等作業平台。
Ⅳ 求C語言金字塔代碼思路!
這個圖形有幾行,就做幾次循環,每次循環列印一行:for ( i=0;i<N;i++ ),N=3
注意i在3行中取值:0,1,2
循環體中輸出每行,每行的構成:分為前邊的空格和後面的星號
每行的空格計數:第1行(i=0)空格數2,第2行(i=1)空格數1,第3行(i=2)空格數0
那麼在i循環中用i表示的空格數就是:總行數-當前行數-1=N-i-1
在i循環中新開一個循環來輸出空格,循環幾次輸出幾個空格
每行的星號計數:第1行(i=0)星號數1,第2行(i=1)星號數3,第3行(i=2)星號數5
那麼在i循環中用i表示的星號數就是:當前行數*2+1=i*2+1
在i循環中新開一個循環來輸出星號,循環幾次輸出幾個空格
最後每行需要一個換行符號輸出
最終你的程序為:
for ( i=0;i<n;i++ ) //這里n是行數
{ for ( j=0;j<n-i-1;j++ ) printf(" "); //可根據不同圖形更換j的循環結束條件公式
for ( j=0;j<i*2-1;j++ ) printf("*"); //可根據不同圖形更換j的循環結束條件公式
printf("
");
}
這樣,這種問題就變成了三個公式的總結問題:行數、空格數、星號數,總結出來套到程序中相應位置即可。總結是可以把i的值、空格的值、星號的值列出來,用一點序列的知識就可歸納出公式。
行號 0,1,2
空格 2,1,0 總行號-行號
星號 1,3,5 行號*2-1,這是等差數列
Ⅵ C語言編程中的金字塔問題
#include<stdio.h> #include <conio.h> void main() { int i,j,k; char ch,key; printf("ó×:"); scanf ("%c",&key); while (key=='e') {for(i=0;i<5;i++) { for(j=5;j>=i;j--) printf(" "); for(j='A';j<='A'+i;j++) printf("%c",j); for(j='A'+i-1;j>='A';j--) printf("%c",j); printf("\n"); } printf ("finished"); printf ("\n"); break; } getch (); } 這個非常合你的要求,他們的結果都不是你的要求!
滿意請採納
Ⅶ 如何用c語言編寫這個數字金字塔
#include
void main()
{
int i,j;
for (i=1;i<=3;++i) // 控制金字塔的層數,本例輸出3層,可以改變輸出任意層
{
for (j=1;j<=3-i;++j) // 控制金字塔每層前面輸出的空格數
printf(" ");
for (j=1;j<=2*i-1;++j) // 控制金字塔每層需要列印'*'的個數
printf("*");
printf("\n"); // 一層金字塔輸出完畢,換行繼續輸出下一層
}
}
Ⅷ 用c語言編寫星型金字塔
#include<stdio.h>
voidmain()
{
inta=0,b=4,c=1,d;
for(a=0;a<3;a++)
{
for(d=0;d<4;d++)putchar('');
for(d=0;d<c;d++)putchar('*');
for(d=0;d<4;d++)putchar('');
b-=2;
c+=2
}
}
Ⅸ C語言。金字塔*,求解釋。
列印一行5顆星你會不?(*****)
for(i=1;i<=5;i++)//循環列印5顆星
{prinft("*");}
--------------------------------------------------
列印下面這張圖你會不?(5行5顆星)就是在上面的基礎上在來一個循環
for(j=1;j<=5;j++)//外層循環
{
for(i=1;i<=5;i++)//循環列印5顆星
{prinft("*");}
printf(" ");
}
-----------------------------------------------------
現在說你的圖
其實就是把一部分星星換成空格列印而已。所以,上一步的外層循環內要分兩步:列印空格+列印5顆星(+列印回車)
代碼就是你給的那個,我不重復了。至於裡面的數量關系的規律,你可以從簡單到復雜的琢磨下就是了