新的课程开始了,看到老师的题目首先想到要用文件流打开文本文档,在2月27日19:30~20:30,翻书猛补知识。过后,没有头绪,休息了。在2月28日7:30~8:30,上网寻找做题思路,大致流程较清晰,但编程无望。在3月2日,先寻找英文版小说,后开始编程,想与做确实不同,多次尝试未果,继续上网寻求帮助,用结构体与大小写转换都是通过上网得到的启发。虽然编程道路坎坷,但是英文小说的中文版(富爸爸穷爸爸)大致看了看,里面的精彩语录很受启发“要懂得如何「让钱来替你工作」,而不是「为了钱而工作」”,“什么是资产?资产就是向你口袋送钱的东西。什么是负债?负债就是把钱从你口袋掏出的东西”,“从长期来看,重要的不是你挣了多少钱,而是要看你能留下多少钱,以及留住了多久。”当然,现在最重要的还是好好实践。

 1 #include<stdio.h>
 2 #include<iostream.h>
 3 #include<string.h>
 4 struct w            
 5     {
 6         char c[50];     //单词
 7         int num;        //出现次数
 8     }w[100];
 9 int main()
10 {
11     FILE *fptr;
12     char b[50],ch;
13     int i=0,j=0,k=0,m=1,t=0,flag=0;
14     fptr=fopen("dad.txt","r");
15     while((ch=fgetc(fptr))!=EOF)
16     {   
17         if('A'<=ch&&ch<='Z')
18             ch=ch+32;          //字母为大写时转换为小写
19         if('a'<=ch && ch<='z')
20         {
21             b[i]=ch;
22             i++;
23             flag=1;
24         }
25         else
26         {
27            if(ch=='-'&&(ch=fgetc(fptr))=='\n')
28            {
29                    flag=0;
30            }
31           
32           else
33           {
34              if(flag==1)
35               {   b[i]='\0';i=0;flag=0;m=0;
36                   for(j=0;j<k;j++)
37                   {
38                       if(strcmp(b,w[j].c)==0)
39                       {
40                           m=1;
41                           break;
42                       }
43                   }
44                       if(m)
45                           w[j].num++;
46                       else
47                       {
48                           w[k].num=1;
49                           strcpy(w[k].c,b);
50                           k++;
51                       }
52               }
53            }
54           if(ch>='A' && ch<='Z')
55               ch+=32;
56           if(ch>='a' && ch<='z')
57           {
58               b[i]=ch;
59               i++;
60               flag=1;
61           }
62         }
63     }
64     cout<<"出现最多的十个单词是:"<<endl;
65     for(i=0;i<k&&i<10;i++)   //简单选择排序
66     {
67         t=0;
68         while(w[t].num==0)
69             t++;
70         for(j=1;j<k;j++)
71         {
72             if(w[j].num>w[t].num)
73                 t=j;
74             else
75                 if(w[j].num==w[t].num)
76                 {
77                     if(strcmp(w[j].c,w[t].c)<0)
78                         t=j;
79                 }
80         }
81         cout<<w[t].c<<"   "<<w[t].num<<endl;
82         w[t].num=0;
83     }
84     return 0;
85 }

21:07:47

posted on 2014-03-02 21:05  播下的种子  阅读(457)  评论(2编辑  收藏  举报