首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >控制台-同一行上的打印模式

控制台-同一行上的打印模式
EN

Stack Overflow用户
提问于 2016-04-02 03:46:01
回答 2查看 658关注 0票数 2

我正在尝试不同的活动,因为我是一个初学者,并希望了解更多。我试图在同一行上打印一个图案,我的代码是:

代码语言:javascript
运行
复制
int main()
{
    int numOfWiggles;
    int count;
    printf("Enter number of wiggles: ");
    scanf("%d", &numOfWiggles);
    printf("_");
    for (count=1; count<=numOfWiggles; count++)
    {
        printf("/\\ \n   \\/ \r");
    }
    printf("-");
}

删掉了。

但是,我不想让他们在新的线上,我希望模式延伸到同一条线上。我知道这是因为\n,但我不知道如何把它放在同一条线上。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-02 03:57:54

你可以把它分为上下两部分。

打印上半部使用:

代码语言:javascript
运行
复制
for (count=1; count<=numOfWiggles; count++)
{
    printf("/\\  ");  //this will print /\  /\  /\
}
printf("\n  ");   // go to next line

打印下半部使用:

代码语言:javascript
运行
复制
for (count=1; count<=numOfWiggles; count++)
{
    if(count == numOfWiggles)
        printf(" \\/");  // this will print last \/ without space at the end
    else
        printf(" \\/ ");  // this will print \/ \/ \/
}

您使用的是“\n”,它将光标位置移到下一行,并开始从下一行开始打印,这就是问题所在。

票数 2
EN

Stack Overflow用户

发布于 2016-04-02 04:00:52

您所要寻找的结果实际上是两条不同行上的两种打印结果。您可以使用缓冲区在同一个循环中构造字符串,也可以只使用两个循环。

代码语言:javascript
运行
复制
for (count = 0; count <  numOfWiggles; count++)
{
    If (count == 0)
        Printf ("_/\");
    Else
        Printf ("  /\");
    Printf ("  _/n");
}

for (count = 0; count <  numOfWiggles; count++)
{
    If (count == 0)
        Printf ("   \/");
    Else
        Printf ("  \/");
    Printf ("/n");
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36368935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档