Ⅰ 谁能解释下金字塔图案的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颗星(+打印回车)
代码就是你给的那个,我不重复了。至于里面的数量关系的规律,你可以从简单到复杂的琢磨下就是了