gpt4 book ai didi

c - 帕斯卡三角形像 C 中的星形图案

转载 作者:太空宇宙 更新时间:2023-11-04 01:13:28 24 4
gpt4 key购买 nike

我正在尝试在 C 中打印此模式:

    *
* *
* * *
* * * *

我想出了一个类似的东西,但它并没有完全对齐,看这个:

         * 
* *
* * *
* * * *
* * * * *


有点偏右。我想我对星间距的概念是正确的,但出了点问题,有人可以帮我解决这个问题吗?

这是我的代码:

#include <stdio.h>

int main() {
int sp, st, i, j, k;
printf("Enter rows: ");
scanf("%d", &st);
sp = st * 2;
for(i = 1; i <= st; i++)
{
for(j = 1; j <= i; j++)
{
if(j == 1)
for(k = 1; k <= sp - i*2; k++)
printf(" ");
printf(" * ");
}
printf("\n");
}
}

请注意,sp = 空格数,st = 最后一行的星星数

最佳答案

printf(" * ");

这里你应该只打印一个空格,可能是"* "

for(k = 1; k <= sp - i*2; k++)

将此更改为 k < sp - i*2;因为你一开始打印了太多空格。

此外,这在技术上没有错,但我认为您应该将第三个 for 循环(带 k 的那个)从第二个 for 循环中拉出来。您实际上不需要对第二个 for 循环的每次迭代都进行检查,因为它只是应该打印初始空格。

关于c - 帕斯卡三角形像 C 中的星形图案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6749059/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com