我刚开始学习edx课程,我很确定你们都听说过哈佛大学的CS50计算机科学入门课程。我在我的第一个pset上遇到问题,他们要求我创建一个标签金字塔。我设法创造了金字塔,但它在错误的一面,它应该是这样的:
#
##
###
####
#####
######
########
但我的是在右边......我找不到翻转它的方法:(。
这是我的代码:
#include <stdio.h>
#include <cs50.h>
int main(void)
{
//declare variables.
int line, space, hash, user;
//promping user until get the right answer.
do
{
printf("Height of pyramid: ");
user = GetInt();
}
while(user < 0 || user > 23);
//whill print new lines
for (line = 1; line <= user; line++)
{
//print spaces
for(space = 0; space > 0; space--) {
printf(" ");
}
//print hashes
for (hash = 0; hash <= line; hash++) {
printf("#");
}
printf("\n");
}
}
任何人都可以帮我这个吗?我现在很沮丧。 提前谢谢!
答案 0 :(得分:0)
而不是
//print spaces
for(space = 0; space > 0; space--) {
printf(" ");
}
使用
//print spaces
for(space = user - line; space > 0; space--) {
printf(" ");
}
和 - (风向标发现此错误 - 输出在每行中额外增加1个
#
而不是
for (hash = 0; hash <= line; hash++) {
使用
for (hash = 0; hash < line; hash++) {