aimer1111 2022-07-14 01:02 采纳率: 50%
浏览 71
已结题

c语言,用星号打印一个“√”

问题遇到的现象和发生背景

最近夏日炎炎,在家学c语言,遇到困难,请教一下各位

问题相关代码,请勿粘贴截图

打印一个用“*”打印一个“√”

运行结果及报错内容

#include<stdio.h>
int main(void) {
int b,c;
for (int a = 1; A <= 3; A++) {
for (b = 1; b <= 8 - a; b++) {
printf(" ");

    }
    printf("*\n");
}
for (c = 1; c <= 3; c++) {
    for (int d = 1; d <= c-1; d++) {
        printf(" ");
    }
    for (int e = 1; e <= 4 - c; e++) {
        if (c == 1 && e == 1)
            printf("*   *");
        if (c > 1)
            printf("*");




        if (e < 4 - c)
            printf(" ");
        
    }

    printf("\n");
}

return 0;

}

我的解答思路和尝试过的方法

我的方法是先输出前三行,然后后三行输出一个倒立的等边三角形,再用if干掉第一行,改成"* *",我编程实在不行。

img

我想要达到的结果

我想要没有这种投机取巧的办法和思路!

  • 写回答

1条回答 默认 最新

  • 天际的海浪 2022-07-14 04:34
    关注

    你题目的解答代码如下:

    #include <stdio.h>
    int main(void)
    {
        int a,b;
        for (a = 1; a <= 6; a++)
        {
            for (b = 1; b <= 8 - a; b++)
            {
                if (b==a-3)
                    printf("*");
                else
                    printf(" ");
            }
            printf("*\n");
        }
    
        return 0;
    }
    

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 7月22日
  • 已采纳回答 7月14日
  • 创建了问题 7月14日