标题:在主函数中输入一个字符ch和一个正整数n(20>=n>=1),然后在被调函数中输出 ...
只看楼主
卮酒
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2020-4-17
结帖率:100%
已结贴  问题点数:20 回复次数:4 
在主函数中输入一个字符ch和一个正整数n(20>=n>=1),然后在被调函数中输出由n行字符ch构成的等腰三角形。
为什么成不了等腰三角形,哪里有问题?
#include<stdio.h>
void printstar(char ch, int n)
{int i,j;
 for(i=1;i<=n;i++)
  {for(j=1;j<=n-i;j++)
     printf(" ");
   for(j=i;j<=2*i-1;j++)
     printf("%c",ch);
 printf("\n");
  }
return;
}
int main()
{char ch;
int n;
ch=getchar();
scanf("%d",&n);
printstar(ch,n);
return 0;
}
搜索更多相关主题的帖子: int 字符 主函数 三角形 printf 
2020-05-15 14:01
纯蓝之刃
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:76
帖 子:554
专家分:3690
注 册:2019-7-29
得分:20 
程序代码:
#include<stdio.h>
void printstar(char ch, int n)
{
    int i,j;
    for(i=1; i<=n; i++)
    {
        for(j=1; j<=n-i; j++)
            printf(" ");
        for(j=i; j<=2*i-1; j++)
            printf("%c",ch);
        for(j=i; j<=2*i-2; j++)
            printf("%c",ch);
        for(j=1; j<=n-i; j++)
            printf(" ");
        printf("\n");
    }
    return;
}
int main()
{
    char ch;
    int n;
    ch=getchar();
    scanf("%d",&n);
    printstar(ch,n);
    return 0;
}

一沙一世界,一花一天堂。无限掌中置,刹那成永恒。
2020-05-15 14:09
卮酒
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2020-4-17
得分:0 
回复 2楼 纯蓝之刃
谢谢!
2020-05-15 14:13
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
得分:0 
用格式控制符输出图形非常方便 但很少看见有人用
程序代码:
#include<stdio.h>
#include<string.h>
void printstar(int ch, int n)
{
    char str[36] = "";
    memset(str, ch, n*2+1);
    for(int i=0; i<n; ++i)
        printf("%*.*s\n", n+i, i*2+1, str);
}
int main()
{
    char ch;
    int n;
    scanf(" %c%d",&ch, &n);
    printstar(ch, n);
    return 0;
}

https://zh.
2020-05-15 15:08
田心乡隹
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2020-5-9
得分:0 
#include<stdio.h>
void printstar(char ch, int n)
{
    int i,j,k;
    for(k=n;0<k; k--)
    {
        for(j=(n-k);0<j;j--)
            printf(" ");
        for(i=(k*2-1);0<i;i--)
            printf("%c",ch);
      
        
        printf("\n");
    }
    return;
}
int main()
{
    char ch;
    int n;
    ch=getchar();
    scanf("%d",&n);
    printstar(ch,n);
    return 0;
}
新手改了半天

[此贴子已经被作者于2020-5-15 22:30编辑过]

2020-05-15 22:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-501618-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.614075 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved