列表

详情


HJ4. 字符串分隔

描述

•输入一个字符串,请按长度为8拆分每个输入字符串并进行输出;

•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。

输入描述

连续输入字符串(每个字符串长度小于等于100)

输出描述

依次输出所有分割后的长度为8的新字符串

示例1

输入:

abc

输出:

abc00000

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C 解法, 执行用时: 1ms, 内存消耗: 276KB, 提交时间: 2021-07-20

#include<stdio.h>
#include<string.h>
int main()
{
    char str[100]={0};
    
    while(scanf("%s",str)==1){
        char *str_p=str;
        int str_len=strlen(str)-1;
        int n=str_len/8;
      for(int j=0;j<n;j++){
        for(int i=0;i<=7;i++){
                printf("%c",*str_p);
                str_p++;
            }
          printf("\n");
        }
        for(int i=0;i<=7;i++){
         if(*str_p!='\0'){
                printf("%c",*str_p);
                str_p++;
              }
          else{
                printf("0");
            }
        }
        printf("\n");
    }
}

C 解法, 执行用时: 1ms, 内存消耗: 284KB, 提交时间: 2020-12-06

#include<stdio.h>
#include<string.h>
int main()
{   
    char str[105];
    while(scanf("%s",str)!=EOF)
    {   
         int len,count=0;
         len=strlen(str);
        for(int i=0;i<len;i++)
        {
           if(i>0&&i%8==0)
           {
               printf("\n");
              count=0;
           }
            printf("%c",str[i]);
            count++;
        }
    while(count<8)
    {
        printf("0");
        count++;
    }
        printf("\n");
    }
    return 0;
}

上一题