毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

C++统计文件中的关键字程序

更新时间:2011-5-3:  来源:毕业论文

C++统计文件中的关键字程序
需求分析: 从键盘输入某个C++源程序文件名,而后通过getline依次读入该文件中的各行(假设每行都不超过100个字符),并统计显示出该源程序文件中出现了哪些你所关心的C++关键字,以及各关键字出现的次数(所关心的那一批关键字由程序进行指定)。
 
7.2程序执行的结果:
这是输入的源文件内容地址为:D:\test.txt,假定我们统计void,returrn,float,new四个字符串,当然你也可以曾加统计的字符串。
 
 7.3概要设计:

本程设计思路: 将每个关键字其自身位索引,保存计数到std::map数据结构里,而后从各读入行中“分解”出每一个“字”,并依次与A中的各关键字进行比较,相同则在其计数上加1,如此统计个关键字出现的次数。
程序流程图(如左图):

7.3   详细设计与编码:
见上传程序。
 
7.4  调试分析:
     本题的关键在于从每行的源文件中提取字符串并与关键字比较,这需要我们剔除一些无关的字符。

7.5   用户使用说明:
      设置好了关键字后,输入源文件的路径即可得到文件中关键字出现的次数。

7.6 设计心得:
本题加强了我对文件操作的理解。以及对字符串的操作的理解。
#include<iostream>
using namespace std;

template<typename T>
class list    //增序排列链表
{
public:
 template<typename T2>
 class node   //节点
 {
 public:
 node();
 node(T2 _data):data(_data),next(0) { }
 node(const node& other);
 T2 data;
 node* next;
 ~node()
 { 
  if(next)
  delete next;
//  cout<<"delete...";
 }
 friend class list<T2>;
 };

 list():head(0),length(0) { }
 void add(T value)
 {
  node<T> *_node=new node<T>(value);
  if(_node)
  {
  length++;
  if(!head || _node->data<=head->data)  //处理只包含一个元素或无元素
  {
   _node->next=head;
       head=_node;
   return;
  }
  node<T>* temp=head;
  while(temp->next)    //便利查询插入的位子
  {
   if(temp->next->data>_node->data)
    break;
   temp=temp->next;
  }
  _node->next=temp->next;
  temp->next=_node;
  }
  return;
 }
 void printList() const
 {
  node<T>* index=head;
原文请找腾讯752018766六,维-论'文.网http://www.lwfree.cn  {
  delete head;
 }
 node<T>* head;
 int  length;
};

void main()
{
 int i;
 list<int> array;
// array.add(3);
// array.add(3);
cout<<“请依次输入数字(0结束)"<<endl;
 cin>>i;
 
 while(i!=0)
 {
  array.add(i);
  cin>>i;
  
 }
// cout<<array.length;
 array.printList();}1812

C++统计文件中的关键字程序下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©lwfree.cn 六维论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。