题解 | #字符串分隔#

字符串分隔

https://www.nowcoder.com/practice/d9162298cb5a437aad722fccccaae8a7

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

/* 单字符读入,长度到8则添加\n,不足8则补0
 */

#define MAX_LEN 120

int main() {
    char *str = NULL;
    int ch = 1;
    unsigned int cl_num = 0;
    unsigned int add = 0;
    int i = 0;

    str = (char*)malloc(MAX_LEN * sizeof(char));
    memset(str, '\0', MAX_LEN);
    while((ch = getchar()) != '\n')
    {
        str[i] = (char)ch;
        i++;
        if((i - cl_num) % 8 == 0)
        {
            str[i] = '\n';
            i++;
            cl_num++;   //对齐添加\n后的字符串
        }
    }
    if((i - cl_num) % 8 != 0)    //最后一个字符串不为8位
    {
        add = (8 - (i - cl_num) % 8) % 8;    //要补充的位数
        for(int j = 0; j < add; j++)
            str[i + j] = '0';
    }

    printf("%s", str);

    free(str);
}

全部评论

相关推荐

2024-12-27 10:21
已编辑
海南师范大学 媒介策划
到我怀里来:身高体重住址这些就别写了,留几个关键的就行,工作经历突出重点写详细点
点赞 评论 收藏
分享
01-26 18:45
门头沟学院 Java
一天代码十万三:哥们实习再包一下吧,产出太笼统了,尽量体现业务
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务