gpt4 book ai didi

c - 打印一个右对齐的 "#"楼梯

转载 作者:太空宇宙 更新时间:2023-11-04 00:45:36 25 4
gpt4 key购买 nike

我在 Hackerrank 中做以下问题:
https://www.hackerrank.com/challenges/staircase?h_r=next-challenge&h_v=zen

基本上,代码必须打印出一个由“#”字符组成的右对齐“阶梯”。所以,如果输入是 6,那么输出是:

     #
##
###
####
#####
######

这是我想出的解决方案(在 C 中):

#include <stdio.h>
#include <string.h>

int main(){
int n,i;
scanf("%d",&n);
char str[]="";
for(i=0;i<n;i++)
strcat(str,"#");
for(i=0;i<n;i++)
printf("%*.*s\n",n,i+1,str);
return 0;
}

但这不起作用,我似乎无法弄清楚哪里出了问题。我不是在寻找新的解决方案。我只想知道我的代码做错了什么。

TIA!

最佳答案

char str[]="";

您没有指定str 的长度。做类似的事情

  char str[10]="";//where 10 is the safest number you think.You should
//not have more than 10 characters.

关于c - 打印一个右对齐的 "#"楼梯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41316292/

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