该程序对应书籍《 C primer plus 》第6版编程练习6-16-5. 新手写的有点啰嗦。不妥之处请指出。
这里做了修改,字母金字塔高度采用数值输入。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#define SPACE ' '
void space(int ,int );
void up(int , int );
void down(int ,int );
int main(void)
{
int i;
int h;
printf("请输入字母金字塔高度:1-26\n");
while ((scanf("%d", &h)) != 1)
{
printf("please try again");
}
for (i = 1; i <=h; i++)
{
space(i, h);
up(i, h);
down(i, h);
printf("\n");
}
return 0;
}
void space(int i, int h)
{
int j;
for (j = 1; j <= h - i; j++)
putchar(SPACE);
}
void up(int i, int h)
{
int j;
char ch= 'A';
for (j = 0; j < i-1; j++)
putchar(ch + j);
}
void down(int i, int h)
{
int j;
char ch='A';
for (j = i-1; j >=0; j--)
putchar(ch +j);
}
程序运行结果:
更多推荐
学习C语言——字母金字塔
发布评论