c語言 列印只出現過一次的單詞 執行不出結果

2021-10-05 23:54:37 字數 878 閱讀 8748

輸入一段字串,期望輸出字串中只出現過一次的單詞(distinct words)。

規定每個單詞不能長於10個字母,比如出現abcdefghijklm則分為兩個單詞abcdefghij和klm處理。此外,不同的單詞不會超過1000個。

**如下,執行不出來結果。

看了半天不知道問題出現在**,求大佬幫助,,,

#include

#include

#include

#include

#define maxchars 10

#define maxwords 1000

intgetword

(char w,

int limit)

if(c ==

eof)

w[len++

]= c;

while

(len < limit &&

(c =

getchar()

)!=eof&&

isalpha

(c))

w[len]

='\0'

;return0;

}typedef

char word_t[maxchars+1]

;int

getword

(word_t w,

int limit)

;int

main()

if(!found && numdistinct < maxwords)

}printf

("%d words read\n"

,totwords)

;for

(i=0

;i)return0;

}

找出陣列中只出現過一次的數

乙個大陣列,在1到25000之間,只有4k memory,列印出其中正好只出現過一次的數。沒出現過,出現過2次,3次,或更多,都不列印。solutions 1 位圖法,但每個數有3個狀態 0,1,1.因此需要2 bit,25000 2 8 1024 6.1k,記憶體占用符合要求。2 壓縮,解法1中,...

只出現一次的數字

1.乙個整型陣列,有乙個數字出現一次,其餘數字出現兩次,找出這個只出現一次的數字。解題思路 異或運算性質 兩個相同的數字異或得0,0與乙個數字異或得數字本身,而且異或運算是滿足交換律的 陣列元素按位異或,交換律可以想象成相同的數字參與運算的時候是相鄰的 所有出現兩次的數字異或之後得0,最後剩餘的是0...

只出現一次的數

給定乙個整數陣列 nums,其中恰好有兩個元素只出現一次,其他所有元素均出現兩次。找出只出現一次的那兩個元素。示例 給定 nums 1,2,1,3,2,5 返回 3,5 注意 結果的順序並不重要,對於上面的例子 5,3 也是正確答案。你的演算法應該具有線性複雜度,你能否僅使用恆定的空間複雜度來實現它...