从一个C语言源程序文件中,统计出该C程序中使用的关键字及其频率。统计结果表格保存到文件中

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include <conio.h>
#define keynum 12
FILE *f;
char keyword[keynum][10]={"void","char","int","float","double","for"
  ,"do","while","return","if","else","switch"};
void main()
{
 int key[keynum];
 char c;
 char str[50];
 int i;
 char *p;
 for(i=0;i<keynum;i++)
  key[i]=0;
 f=fopen("a.txt","rb");
 while(!feof(f))
  {
    c=fgetc(f);
    while(c=='  '||c=='/t')
      c=fgetc(f);
    if(c==';')
      {
        while(c!='/n')
          c=fgetc(f);
      }
    if(isalpha(c))
      {
        p=str;
        while(isalpha(c))
          {
            *p++=c;
            c=fgetc(f);
          }
        *p='/0';
        for(i=0;i<keynum;i++)
         {
           if(strcmp(keyword[i],str)==0)
             {
               key[i]++;break;            
             }
         }
      }
  }
  for(i=0;i<keynum;i++)
   {
     printf("%-10s  %5d/n",keyword[i],key[i]);
   }
  fclose(f);
}

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭