黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

華為機試——拼寫檢查程序

系統(tǒng) 1985 0

C_C++_XY_08 . 拼寫檢查程序

  • 題目描述:

請設(shè)計一個自動拼寫檢查函數(shù),對輸入單詞的錯誤依據(jù)字典進行修正。

1. 輸入為一個單詞和一組字典單詞,每個單詞長度不超過9位;

2. 若字典中沒有與輸入相同的單詞,認為輸入單詞錯誤,需要從字典中選擇一個修正單詞;

3. 修正要求:與輸入單詞長度相同,且單詞中不同字符數(shù)最少;

4. 存在多個修正單詞時,取字典中的第一個;

5. 輸出修正后的單詞。

  • 要求實現(xiàn)函數(shù):

void FixWord(const char *pInputWord, long lWordLen, const char pWordsDic[][MAX_WORD_LEN], long lDicLen, char *pOutputWord);

【輸入】pInputWord: 輸入的單詞

lWordLen: 單詞長度

pWordsDic: 字典單詞數(shù)組

lDicLen: 字典單詞個數(shù)

【輸出】 pOutputWord: 輸出的單詞,空間已經(jīng)開辟好,與輸入單詞等長

【注意】不考慮空單詞和找不到長度相同的單詞等異常情況。

  • 示例:

輸入:“goad”

字典:“god good wood”

輸出:“good”

?

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75

#include ? <iostream>
#include ? <string.h>
using ? namespace std;
#define MAX_WORD_LEN 9
?
// 長度相同,對應(yīng)位字符不同的個數(shù)。
int ? diffCharCount ( const ? char *s1, const ? char *s2)
{
??? int count = 0;
??? while ((*s1 != '\0' ) && (*s2 != '\0' ))
??? {
??????? if (*s1 != *s2)
??????? {
??????????? count++;
??????? }
??????? s1++;
??????? s2++;
??? }
??? return count;
}
?
void ? FixWord ( const ? char *pInputWord, long lWordLen, const ? char pWordsDic[][MAX_WORD_LEN], long lDicLen, char *pOutputWord)
{
??? if (pInputWord == NULL) //Invalid input 略。
??? {
??????? return ;
??? }
?
??? int inputWordLen = strlen (pInputWord);
??? // 求每個單詞的長度。
??? int wordLen[lDicLen];
??? for ( int i = 0; i < lDicLen; i++)
??? {
??????? wordLen[i] = strlen (pWordsDic[i]);
??? }
?
??? int minDiffCount = MAX_WORD_LEN;
??? // 比較輸入單詞與單詞表中長度相同單詞。
??? for ( int j = 0; j < lDicLen; j++)
??? {
??????? if (inputWordLen == wordLen[j])
??????? {
??????????? // 長度相同時,比較各個字符是否相同。
??????????? if ( strcmp (pInputWord,pWordsDic[j]) == 0) // 字典中有該單詞。
??????????? {
??????????????? strcpy (pOutputWord, pInputWord);
??????????? }
??????????? else
??????????? {
??????????????? int tmp;
??????????????? tmp = diffCharCount(pWordsDic[j], pInputWord);
??????????????? if (tmp < minDiffCount)
??????????????? {
??????????????????? minDiffCount = tmp;
??????????????????? strcpy (pOutputWord, pWordsDic[j]);
??????????????? }
??????????? }
??????? }
??? }
}
?
?
int ? main () {
?
??? const ? char *pInputWord = "goad" ;
??? const ? char pWordsDic[][MAX_WORD_LEN] = { "god" , "good" , "wood" };
??? char pOutputWord[MAX_WORD_LEN];
?
??? FixWord(pInputWord, 4, pWordsDic, 3, pOutputWord);
?
??? cout << pOutputWord << endl;
?
?
??? return 0;
}

華為機試——拼寫檢查程序


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論