题解 | #字符串分隔#
字符串分隔
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);
}
海康威视公司福利 1282人发布