鱼C论坛

 找回密码
 立即注册
查看: 2626|回复: 14

[已解决]倒三角形输出

[复制链接]
发表于 2021-7-9 14:04:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本题要求编写程序,输出指定的由“*”组成的倒三角图案。

输入格式:
本题目没有输入。

输出格式:
按照下列格式输出由“*”组成的倒三角图案。

* * * *
* * *
  * *
   *
最佳答案
2021-7-9 22:35:35
本帖最后由 yuxijian2020 于 2021-7-9 22:57 编辑

递归
#include <stdio.h>
#include <stdlib.h>     //system

void InvertedTriangle(int line)
{
    static int times = 0;
    if (line == 0) return;
    int space = times;
    while (space != 0) printf_s(" "), space--;
    while (count != 0) printf_s("* "), count--;
    printf_s("\n");
    times++;
    InvertedTriangle(line - 1);
}

int main()
{
    InvertedTriangle(4);

    system("pause");
    return 0;
}
2.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-9 14:23:54 | 显示全部楼层
#include <stdio.h>
int main()
{
    printf("* * * *\n\
 * * *\n\
  * *\n\
   *\n");
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 14:25:05 | 显示全部楼层
java版:
package com.lian.controller;

import java.util.Scanner;

/**
 * @author :LSS
 * @description: 输出倒三角形
 * @date :2021/7/9 14:17
 */
public class Test2 {
    public static void main(String[] args) {
        System.out.println("请输入三角形行数:");
        Scanner scanner = new Scanner(System.in);
        int i = scanner.nextInt();
        //控制行数
        for (int j = i; j > 0; j--) {
            //控制空格个数
            for (int k = j; k < i; k++) {
                System.out.print(" ");
            }
            //控制星个数
            for (int k = 0; k < (2 * j - 1); k++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 14:28:12 | 显示全部楼层


不行了,我这真的笑出了声
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 14:31:21 | 显示全部楼层
连帅帅 发表于 2021-7-9 14:28
不行了,我这真的笑出了声

这样不行吗,我看没有输入要求
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 14:34:28 | 显示全部楼层
逃兵 发表于 2021-7-9 14:31
这样不行吗,我看没有输入要求

完全可以,我写的也是这样的代码,只是你领先一步,^_^
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 14:35:22 | 显示全部楼层
逃兵 发表于 2021-7-9 14:31
这样不行吗,我看没有输入要求

我觉得吧,最起码有个行数呀,这就打印一个固定图形,也未免太那啥了吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 16:26:22 | 显示全部楼层
人造人 发表于 2021-7-9 14:34
完全可以,我写的也是这样的代码,只是你领先一步,^_^

大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 22:35:35 | 显示全部楼层    本楼为最佳答案   
本帖最后由 yuxijian2020 于 2021-7-9 22:57 编辑

递归
#include <stdio.h>
#include <stdlib.h>     //system

void InvertedTriangle(int line)
{
    static int times = 0;
    if (line == 0) return;
    int space = times;
    while (space != 0) printf_s(" "), space--;
    while (count != 0) printf_s("* "), count--;
    printf_s("\n");
    times++;
    InvertedTriangle(line - 1);
}

int main()
{
    InvertedTriangle(4);

    system("pause");
    return 0;
}
2.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-10 10:47:31 | 显示全部楼层
递归最难理解了,我没想到竟然可以用递归做
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-10 10:49:12 | 显示全部楼层

我思想跟你一样的,但用c语言写的,感觉c语言跟java也算一脉相承
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-10 10:53:07 | 显示全部楼层

#include <stdio.h>
int main()
{
        int r = 4;
        int b = 1; int k;
        for (int s = 0; s <= r; s++,r--)
        {
                int x = 4;
                for (int z = 1; z <= r; z++)
                {
                        printf("* ");
                }
                s = 0;
                printf("\n ");
                k = 1;
                for (int j= 0; j < 4-r; j++)
                {
                        printf(" ");
                        if (j == 4)
                        {
                                break;
                        }
                }
        }
}
这个也能打出图形,只是不过审,格式不对
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-10 12:25:50 | 显示全部楼层
公子缠乡 发表于 2021-7-10 10:47
递归最难理解了,我没想到竟然可以用递归做

递归就是另一种循环而已, 我就是整个活
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-10 15:28:51 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-10 22:41:23 From FishC Mobile | 显示全部楼层
#include<stdio.h>


void print_str(int n)
{
    for(int i=0;i<=n;i++)
    {
        for(int k=0;k<=i;k++)
        {
            printf(" ");
        }
        for(int j=n-i;j>0;j--)
        {
            printf("* ");
        }
        printf("\n");
    }
}
int main()
{
    int n;
    printf("请输入需要打印多少行倒三角形:");
    scanf("%d",&n);
    print_str(n);
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-11 08:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表