展开全部
双重循环
#include <stdio.h>
#include<stdlib.h>
void PrintPyramid(char c);
main()
{
char n;
printf("Please input a capital:\n");
scanf("%c",&n);
PrintPyramid(n);
system("pause");
}
//函数功能:输出金字塔
void PrintPyramid(char c)
{
int i=65 , j ;
//第一重循环 :控制行的数量
for(;i<=c;i++)
{
//第二重循环1:控制顺序输出ABC(即前n位字母)
for(j=65;j<=i;j++)
printf("%c",j);
//第二重循环2:控制逆序输出BA(即后n-1位字母)
for(j=i-1;j>=65;j--)
printf("%c",j);
printf("\n");
}
}
展开全部
等腰三角形的程序
#include<stdio.h>
#define N 10
#include<stdio.h>
void main()
{
int i,j,n=13;
printf("N=");
while(n>12)
scanf("%d",&n); /*控制输入正确的值以保证屏幕显示的图形正确*/
for(i=0;i<=n;i++) /*控制输出N行*/
{
for(j=0;j<24-2*i;j++) printf(" "); /*控制输出第i行前面的空格*/
for(j=1;j<i+2;j++) printf("%4d",c(i,j)); /*输出第i行的第j个值*/
printf("\n");
}
}
int c(int x,int y) /*求杨辉三角形中第x行第y列的值*/
{
int z;
if((y==1)||(y==x+1)) return 1; /*若为x行的第1或第x+1列,则输出1*/
z=c(x-1,y-1)+c(x-1,y); /*否则,其值为前一行中第y-1列与第y列值之和*/
return z;
}
这个问题与杨辉三角的求法相似,你可以参考一下这个程序。
#include<stdio.h>
#define N 10
#include<stdio.h>
void main()
{
int i,j,n=13;
printf("N=");
while(n>12)
scanf("%d",&n); /*控制输入正确的值以保证屏幕显示的图形正确*/
for(i=0;i<=n;i++) /*控制输出N行*/
{
for(j=0;j<24-2*i;j++) printf(" "); /*控制输出第i行前面的空格*/
for(j=1;j<i+2;j++) printf("%4d",c(i,j)); /*输出第i行的第j个值*/
printf("\n");
}
}
int c(int x,int y) /*求杨辉三角形中第x行第y列的值*/
{
int z;
if((y==1)||(y==x+1)) return 1; /*若为x行的第1或第x+1列,则输出1*/
z=c(x-1,y-1)+c(x-1,y); /*否则,其值为前一行中第y-1列与第y列值之和*/
return z;
}
这个问题与杨辉三角的求法相似,你可以参考一下这个程序。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
char c;
int main()
{
scanf("%c",&c);
for (int i=1;i<=c-'A'+1;i++)
{
for (int j=0;j<i;j++) printf("%c",'A'+j);
for (int j=i-1;j;j--) printf("%c",'A'+j-1);
printf("\n");
}
}
你看看是不是这个意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void f(char *a, char *b)
{
while(*a++);
a--;
while(*a++=*b++);
}
void main()
{
int i, j;
char c, x;
scanf("%c", &c);
for(i=1; i<=c-'A'+1; i++)
{
x = 'A';
for(j=1; j<=(2*i-1)/2; j++)
printf("%c", x++);
for(;j<=2*i-1; j++)
printf("%c", x--);
printf("\n");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int main()
{
int i,m,n;
char t,letter;
printf("请输入大写字母A—Z\n");
scanf("%c",&letter);
printf("您所要的金字塔如下:\n");
for(i=0;i<letter-64;i++)
{
for(t='A',m=letter-64;t<66+i;t++)
{
printf("%*c",m-i,t);
if(t==65) break;
}
for(t='A';t<65+i;t++) printf("%c",t+1);
for(t='A',n=1;t<65+i;t++,n++) printf("%c",65+i-n);
printf("\n");
}
}
int main()
{
int i,m,n;
char t,letter;
printf("请输入大写字母A—Z\n");
scanf("%c",&letter);
printf("您所要的金字塔如下:\n");
for(i=0;i<letter-64;i++)
{
for(t='A',m=letter-64;t<66+i;t++)
{
printf("%*c",m-i,t);
if(t==65) break;
}
for(t='A';t<65+i;t++) printf("%c",t+1);
for(t='A',n=1;t<65+i;t++,n++) printf("%c",65+i-n);
printf("\n");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询