饭来 2019-03-22 17:58 采纳率: 100%
浏览 1148
已采纳

main 里面的 buf[n] = '\0'; 是什么意思啊? 如果我想让输出的字符之间加上空格又应该怎么改呢?

#include "stdio.h"

class Machine
{
public:
    char Play()
    {
        return 'R';
    }
};

class Human
{
public:
    char Play()
    {
        char ch;
        //printf("s?r?p?\n");
        scanf("%c", &ch);
        return ch;
    }
};

class Referee
{
public:
    char Judge(char m, char p)
    {
        if (m == p) return 'T';
        if ((m == 'S' && p == 'P') ||
            (m == 'P' && p == 'R') ||
            (m == 'R' && p == 'S'))
            return 'L';
        else
            return 'W';
    }
};

int main()
{
    Machine m;
    Human p;
    Referee r;
    int n;
    char buf[100];
    scanf("%d", &n);
    for (int i = 0; i < n; i++)
        buf[i] = r.Judge(m.Play(), p.Play());
    buf[n] = '\0';
    printf("%s\n", buf);
    return 0;
}
  • 写回答

1条回答 默认 最新

  • threenewbee 2019-03-22 18:14
    关注

    截断字符串。加上空格那个,可以帮你修改。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?