求助高手,關於C語言的,怎麼在統計字串的基礎上判斷我輸入的是英文本母?

時間 2021-07-06 05:03:35

1樓:

參考思路是先分詞,再判斷每個詞是不是乙個單詞。

模型先簡單點,假設分隔單詞的字元只有空格,單詞只由英文本元組成而且大小寫不敏感。

分詞就要實現 string.Split() ,C 語言沒有作為基礎型別的 string,要麼實現乙個,要麼轉換思路——因為只有讀取動作,返回 char* 不一定要另外開闢記憶體,比如接受乙個 char*,返回下乙個單詞起點的指標(返回遇到的第乙個空格後面的第乙個非空格字元的指標)。

然後需要判斷以空格或者空字元為終點的字串是不是只有英文本元。

#include

#include

#include

// 字串緩衝區

#define STRLEN 256

char

str[

STRLEN]=

;// 除了空字元和換行,也視空格為乙個單詞的末尾bool

IsWordEnd

(intp)

// 傳入乙個單詞的起點位置,輸出「下乙個單詞」的起點位置intNext

(int

original

)while

(result

&&IsWordEnd

(result

))return

result;}

// 簡單起見,認為單詞只由英文本元組成

bool

IsWord

(int

start)}

return

true;}

// 為緩衝區內的字串計數單詞個數

intWordCounter()}

return

count;}

C語言求助,如圖怎麼實現元素互換?

chainhelen 不需要 j while i SIZE 2 還一種寫法,比較hack點,也可以看看 include define SIZE 5 void printArr int a,int n printArr a,SIZE for int i 0 i SIZE 2 i printArr a,...

關於c語言的malloc 0xffffffff 的乙個問題???

千年放浪 如 李洋 所說,我在64位機上看到的語法樹解析完的結果如下 sizeof size t 是8。1其實轉換成了 1ull。 malloc的引數是無符號整數size t型別,所以你用0xffffffff做引數,就會預設是正整數,而 1做引數,就會導致錯誤。還有,malloc返回值要顯式轉化,不...

怎麼使用c語言中的sort排序,在結構體裡面按學號排序??

陳舸 問題描述的不是很清楚,不過我大概猜你是想對某些結構體做排序,結構體裡有個學號的字段,要以學號為標準來排序?可以使用qsort 隨手碼了乙份。include include include typedef struct student Student int compare const void...