目的:要求用户输入高度,并打印金字塔
我写的代码:
for(i = 1; i <= height; i++)
{
for (j = height-1; j >= 1; j--)
{
printf ("#");
}
printf ("n");
{
我在网上找到的代码:
for(i = height; i >= 1; i++)
{
for (j = 1; j <=i; j++)
{
printf ("#");
}
printf ("n");
{
应该是这样的:
###
##
#
有点像这样?
#include <stdio.h>
#include <string.h>
int main(void) {
int height = 7;
char blocks[2*height];
((char*)memset(blocks, '#', 2*height-1))[2*height-1] = ' ';
for(int i=0; i<height; ++i)
{
printf("%*.*sn", height+i, 2*i+1, blocks);
}
return 0;
}
结果:
Success #stdin #stdout 0s 5472KB
#
###
#####
#######
#########
###########
#############
根据您提供的示例输出:
#include <stdio.h>
#include <string.h>
int main(void) {
int height = 7;
char blocks[height+1];
((char*)memset(blocks, '#', height))[height] = ' ';
for(int i=0; i<height; ++i)
{
printf("%.*sn", height-i, blocks);
}
return 0;
}
结果:
Success #stdin #stdout 0s 5520KB
#######
######
#####
####
###
##
#