C语言编写程序实现输出等腰三角形。

#编写程序实现输出等腰三角形。

img

请将程序补充完整。
请将下面程序中的【1】【2】填写完整,并调试运行正确,并记录运行结果。

img

实现不了,没有输出空格的代码

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7469173
  • 这篇博客也不错, 你可以看下C语言编程>第十五周 ⑥ 编写一个函数,该函数可以统计一个长度为3的字符串在另一个字符串中出现的次数。
  • 除此之外, 这篇博客: C语言例题中的 1。输入三个整数,按由小到大的顺序输出,然后将程序改为:输入3个字符串,按由小到大的顺序输出。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
     
    int main(int argc, char *argv[]) {
    	int a, b, c;
    	int *pa = &a, *pb = &b, *pc = &c;
    	
    	printf("输入三个数: ");
    	scanf("%d %d %d", pa, pb, pc);
    	
    	if ((*pa > *pb) && (*pa > *pc) && (*pb > *pc)) 
    	{
    		printf("由大到小为: %d %d %d\n", *pa, *pb, *pc);
    	}
    	
    	if ((*pa > *pb) && (*pa > *pc) && (*pc > *pb)) 
    	{
    		printf("由大到小为: %d %d %d\n", *pa, *pc, *pb);
    	}
    	
    	if ((*pb > *pa) && (*pb > *pc) && (*pa > *pc)) 
    	{
    		printf("由大到小为: %d %d %d\n", *pb, *pa, *pc);
    	}
    	
    	if ((*pb > *pa) && (*pb > *pc) && (*pc > *pa)) 
    	{
    		printf("由大到小为: %d %d %d\n", *pb, *pc, *pa);
    	}
    	
    	if ((*pc > *pa) && (*pc > *pb) && (*pa > *pb)) 
    	{
    		printf("由大到小为: %d %d %d\n", *pc, *pa, *pb);
    	}
    	
    	if ((*pc > *pa) && (*pc > *pb) && (*pb > *pa)) 
    	{
    		printf("由大到小为: %d %d %d\n", *pc, *pb, *pa);
    	}
    	
    	
    	return 0;
    }
    
  • 您还可以看一下 李老师老师的C语言版数据结构入门课程中的 数据结构入门简介小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    我来为你编写一个使用C语言编写的输出等腰三角形的程序:

    #include <stdio.h>
    
    int main() {
        int n;
    
        printf("请输入等腰三角形的行数n: ");
        scanf("%d", &n);
    
        for (int i = 1; i <= n; i++) {
            // 打印空格
            for (int j = 1; j <= n - i; j++) {
                printf(" ");
            }
            // 打印"* "
            for (int j = 1; j <= 2 * i - 1; j++) {
                printf("* ");
            }
            // 换行
            printf("\n");
        }
    
        return 0;
    }
    

    运行结果:

    请输入等腰三角形的行数n: 5
        * 
       * * 
      * * * 
     * * * * 
    * * * * * 
    

    解释一下代码:

    1. 首先定义一个整型变量n,用于接收用户输入的行数。
    2. 第一个for循环控制行数,从第1行到第n行。
    3. 第二个for循环控制空格的输出,在每一行输出n-i个空格,使得等腰三角形对齐。
    4. 第三个for循环控制" "的输出,第i行需要输出2i-1个" "。
    5. 最后不要忘记换行。

    希望能够帮到你!

这两个空主要是用来控制循环。但等腰三角形需要输出空格,所以也只能放到其中一个空里面。可以这样:
空1:printf("%s", 6-i, " "),i<=5
空2:j <= 2
i-1
效果:

img