使用字符串拼接,使用输入流预判和返回

#include<stdio.h>
#include<string.h>
int main(){
    char input[9];//用于接收输入
    char zPadding[9]="";//用于构建'0'填充串
    char tLF='\0';//用于判断换行,初始为空
    int len=0,i=0;

    while(i<2 && scanf("%8s",input)){//每次最多读8个字符
        len=strlen(input);//看看读了几个字符        
        if(len<8){//没够8个
            memset(zPadding,'0',8);//全设置为字符0
            zPadding[8-len]='\0';//在末尾置空字符,标志字符串结束
            strcat(input,zPadding);//把输入和填充连起来构成8个字符输出
        }        
        printf("%s\n",input);

        //看看有没有换行,换行2次就退出程序
        scanf("%c",&tLF);
        if(tLF=='\n')i++;
        else ungetc(tLF,stdin);//如果没有换行把字符还回标准化输入
    }
}