华为机考HJ4字符串分隔C语言题解
生活随笔
收集整理的這篇文章主要介紹了
华为机考HJ4字符串分隔C语言题解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
華為機考HJ4字符串分隔C語言題解
好家伙,今天的while循環檢測文件末尾又好使了。
把白給打在公屏上。
主要思路就是求余的花樣使用。
首先把字符串數組里的內容全部放入新的數組。
新的數組每滿八個就會刷新一次。
這里主要利用的是舊的數組的角標對8求余作為新數組的角標。
特別注意的是第0個字符,0對8求余為0,但開頭不應該輸出回車,所以應該設置條件排除。
得到其余的求余為0的角標后正常輸出回車。
其次同樣利用對8求余補0。
一開始我以為數組的初值都為0,但忘了這是字符數組,大意了。
一個每天使用單片機的人碰上這種數據類型的題,總是容易混淆。。。
把白給打在公屏上。
希望大家都能拿到offer。
#include<stdio.h>
#include<string.h>//檢測字符串長度,將字符串長度對8求余。
//將數組角標對8求余的結果作為新字符串的角標并放入int len;
char str[101],new[101];
int extra,add,des,i,count=0,j;
int main(){
while(scanf("%s",str)!= EOF){
len = strlen(str);
for( i = 0; i < len ;++i ) //注意區分i++與++i
{new[i%8] = str[i];if((i%8)==0 && i> 0){printf("\n");}printf("%c",new[i%8]);} while(len%8)//補0{printf("0");++len;}printf("\n");}return 0;
}
總結
以上是生活随笔為你收集整理的华为机考HJ4字符串分隔C语言题解的全部內容,希望文章能夠幫你解決所遇到的問題。