1樓:匿名使用者
#include
#include
#include
#define filename "c:\\a.txt" /*存放單詞的文字檔案,可以在此修改路徑*/
char *readln(file *fp) /*從檔案fp中讀取一行(一個)單詞,儲存到字元陣列中,返回字元陣列的地址,返回null說明檔案讀取已經結束*/
wd=(char*)realloc(wd,sizeof(char)*++n);
wd[n-1]='\0';
}return wd;
}int cmp(const void *a,const void *b) /*根據字母順序比較兩個單詞字串的大小*/
else break;
return tolower(as[i])-tolower(bs[j]);
}void freewds(char **a,const int n) /*釋放佔用的空間*/
free(a);
}int main(void)
while (line=readln(fp),line) /*將檔案中的單詞讀取到wds陣列中*/
else wds=(char **)realloc(wds,sizeof(char*)*(++n));
wds[n-1]=line;
}fclose(fp); /*關閉檔案*/
qsort(wds,n,sizeof(char*),cmp); /*對單詞進行排序,不區分大小寫*/
for (i = 0; i freewds(wds,n); return 0; 2樓: 使用歸併排序的思想 1讀取一個單詞 2按照單詞的大小比較順序插入單詞連結串列中 等單詞讀完了 排序的結果也好了 3樓:匿名使用者 #include #include #include #define path "file path" //自定義單詞檔案的路徑 #define maxlen 32 //單詞的最大長度typedef struct nword *pword; void insert(char* nword, pword list) else }new_word->next = p->next; p->next = new_word; }int main(void) while(nhead->next != null)free(nhead); fclose(fp); return 0; }大概就是這樣,能實現你要的要求,可以參考下。有什麼不懂可以研究研究 4樓:苦行道人 本答案的基本思想就是把檔案內容讀入儲存到字元陣列中,然後利用類似氣泡排序法的方法把字元陣列的元素進行重新排序,再把字元陣列的元素儲存到檔案中,裡面定義了一個全域性變數的字元陣列。已通過測試,供參考。 #include "iostream" #include "fstream" #define max 120 using namespace std; void filetostr(char a); //將檔案內容儲存到字元陣列裡面 void doexchange(); //對字元陣列裡的元素進行重新排序 void swap(int,int); char str[max]; //全域性變數,用來儲存檔案內容的字元陣列 void strtofile(char a); //把字元陣列儲存到檔案中 int main() else cout<<"成功開啟檔案!"<>str[i++]; }str[i]='\0'; instr.close(); }void doexchange() swap(i,t); i++;}} void swap(int m,int n) void strtofile(char a) c語言一個文字內所有單詞按首字母排序 5樓:匿名使用者 先將文字里的所有單詞賦值給二維字串變數string[i][j],取每個的單詞的首字母例如string[i][0]進行比較回排序,排序演算法網上多答得是,可以自己找一種做 for(i=0;i<9;i++) /* 冒泡法排序 */for(j=0;j<10-i-1;j++)if(a[j]>a[j+1]) c語言 怎樣將一個英語單詞的字母按字典順序排序 6樓:偏執的it工匠 其實和一組數字排序是一樣的道理 用冒泡法給你寫個例子,你可以參考參考。 #include #include main()}} printf("%s\n",a);} 1 解法 對輸入的單詞進行分割得到列表,遍歷列表中的單詞,二級遍歷單詞中的字元,判斷字元是否存在字元字典中,存在則計數 1,不存在則初始化字典為1 2 知識點 字典 列表 for迴圈 if判斷 input獲得輸入 print列印 3 如下 coding utf 8 簡歷一個字典,key 26個英文字... 幫人調好的,借來供lz參考 include int main void printf c c printf n return 0 include include main printf s s 這個就是你要的程式了,就是不知道當最後的4個字母加4你要變成什麼,就寫這樣了 include stdio.... for j 0 j 4 j 內 能不能把 發過來?c語言,輸入五個國家的名字 英文 按字母順序 即按ascii碼從小到大的順序 排列輸出 include include include typedef struct c c raw 5 c p 5 int main for i 0 i 4 i for...用python編寫一段程式,輸入若干單詞,按照單詞長短進行排
C語言編寫程式,例如將字母A變成E,a變成e,即變成其後字母
C語言程式設計按字母順序給單詞排序,麻煩大神們看看我錯哪兒