连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组-华为在线编程

  1. 题目:连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;

  2. 解题思路:判断每次输入的字符串长度是否为8的倍数,若是8的倍数,直接输出就行;若不是8的倍数,则需要补0的个数为8-len%8;

  3. 注意:gets()和scanf()的区别在于输入的字符串是否中间有空格;对于前者,只有遇到"\n"时才停止输入,而对于后者,出现"\n"或空格都停止输入。

/*
华为在线编程题目:连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;

解题思路:判断每次输入的字符串长度是否为8的倍数,若是8的倍数
直接输出就行;若不是8的倍数,则需要补0的个数为8-len%8;
注意:
gets()和scanf()的区别在于输入的字符串是否中间有空格;
对于前者,只有遇到"\n"时才停止输入,而对于后者,
出现"\n"或空格都停止输入。
*/
#include<stdio.h>
#include<string.h>

int main()
{
    char str[100];
    int i,j;
    int len,need;
    while(gets(str))
    {
        len=strlen(str);
        for(i=0;i<len;i++)
        {
            if((i+1)%8==0)
            {
                printf("%c\n",str[i]);  //字符串长度为8的倍数,直接换行输出
            }
            else
                printf("%c",str[i]);
        }
        if(len%8!=0)
        {
            need=8-len%8;   //补0的个数
            for(i=0;i<need;i++)
            {
                printf("0");
            }
            printf("\n");
        }

    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/ZHUQIUSHI123/article/details/82690972