c讀取文本文件並將單詞存入數組排序輸出

来源:互联网 发布:php图片一句话木马 编辑:程序博客网 时间:2024/05/23 02:01
// homework0213.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include<stdlib.h>#include <string.h>#include <ctype.h>#define NUM 20#define COUNT 10000typedef struct words{    char word[NUM];    int count; }Words;Words text[COUNT];int rc = 0; void store(char* word){       int i=0;    int flag = 0;    if(rc==0)    {        strcpy(text[rc].word,word);        text[rc].count = 1;        rc++;    }    else    {        for(i=0;i<rc;++i)            if(strcmp(text[i].word,word)==0)            {                flag = 1;                 text[i].count++;                 break;            }        if(!flag)        {            strcpy(text[rc].word,word);            text[rc].count = 1;            rc++;          }    }}void swap(Words& from,Words& to){    Words temp;    strcpy(temp.word,from.word);    temp.count = from.count;    strcpy(from.word,to.word);    from.count = to.count;    strcpy(to.word,temp.word);    to.count=temp.count;}void bubbleSort(){    int i,j;    for(i=rc-1;i>0;--i)        for(j=0;j<i;++j)                    if(text[j].count<text[j+1].count ||                (text[j].count<text[j+1].count && strcmp(text[j].word,text[j+1].word)==1))                swap(text[j],text[j+1]);}int _tmain(int argc, _TCHAR* argv[]){char temp[NUM];    int len = 0;    char c;    FILE * pFile;      pFile = fopen ("out.txt","r");    if (pFile==NULL)         perror ("Error opening file");    else    {        do         {            c = fgetc (pFile);            if (isspace(c) || ispunct(c))             {                               temp[len] = '\0';                len = 0;                            store(temp);                }            else            {                if(isupper(c))                    c = c+32;                temp[len++] = c;            }        }while (c != EOF);        fclose (pFile);    }    bubbleSort();    for(int i=0;i<5;++i)    {        printf("%s\t  %d\t\n",text[i].word,text[i].count);    }system("pause");return 0;}

原创粉丝点击