ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:411.38KB ,
资源ID:19196388      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19196388.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据结构论文.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据结构论文.docx

1、数据结构论文目录一、需求分析2(一)、开发背景2(二)、项目目标2(三)、运行环境2(四)、项目任务书2二、技术路线2(一)、总体路线2(二)、详细设计3方案一、C语言设计部分3方案二、VC+设计部分8三、工程进度22四、测试分析23五、个人总结23六、用户手册24七、参考文献241、需求分析(一)、开发背景随着计算机技术的发展,人们的生活也越来越简单化,比如人们不需要再去手写大量的稿件,只需用计算机打字输入,打印。为了更方便人们对文档修改的操作,我们运用数据结构的知识和mfc编程提供的函数,编写合理的查找和替换算法,用以实现对文本中有的字符,查找出来并替换掉的操作。(二)、项目目标本项目主要

2、实现以下功能打开一篇英文文章,在该文章中找出所有给定的单词对所有给定的单词替换为另外一个单词,再存盘。(三)、运行环境硬件环境:处理器Intel(R)Core(TM)2 Duo CPU T6400 2.00GHz 2.00GHz内存(RAM):2.00GB系统类型:32位操作系统软件环境:Windows XPVisual C+ 6.0(四)、项目任务书本程序我们分别用C语言和VC+设计了两个程序,由两人合作完成,其中韩丽霞为总负责,承担字符串查找与替换的总体规划与模块功能的设计,其中代码部分也主要由她完成,赵永恒则负责文档的撰写,以及查找用VC+设计窗体化的资料。2、技术路线(一)、总体方案(

3、二)、详细设计方案一、语言设计方案部分所用函数介绍1、程序预编译函数(即头文件)简析1、#include:程序所需要的输入和输出操作的有关信息2、#include:程序中字符串函数的有关信息3、#include:程序中动态存储分配函数的有关信息2、程序中相关函数的解析输入流成员函数用于从磁盘文件中输入,这些成员函数包括:Open函数 get函数 Getline函数 read函数Seekg函数和tellg函数 close函数我们的程序中用到的getline函数功能:是允许从输入流中读取多个字符,并且允许指定输入终止字符(默认值是换行字符),在读取完成后,从读取的内容中删除该终止字符。例:Cin.

4、getline(s,1000,n);功能:字符类型数组S从键盘连续读入一串字符,直到遇到回车符n时停止,字符个数最多不超过1000个3、程序所涉及知识点1.头文件2.输入输出函数3.字符串操作函数4.数组操作5.辅助指针变量四、程序流程图五、程序代码如下:#include#include#includevoid change(char *ptrm,char t,char *ptr_str) int k=0,i,j,len; char *ptrs=t; len=strlen(t); while(*ptrm!=0) /外层循环,移动母串指针 i=0; k=0; while(*(ptrs+i)!=0

5、) /内层循环,匹配字符串 if(*(ptrs+i)=*(ptrm+k) /如果该位匹配,后移一位,继续匹配下一位 i+;k+; else break; /if(*(ptrs+i)=0) 说明上面的内层循环已经匹配玩字字符串的最后一位 if(*(ptrs+i)=0) /当已经匹配了字符串,母串指针后移len单元,减少尝试次数,优化算法,然后将所匹配的字符串替换掉 for(j=0;jlen;j+) /将所匹配的字符串替换掉 *(ptrm+j)=*(ptr_str+j); for(j=0;jlen;j+) ptrm+; /这行代码就是实现母串指针后移len单元 else ptrm+; /如果匹配不

6、成功,那么母串指针后移一个单元,继续匹配 void main() char s100,t100,t1100; cout请输入文本一:endl; cin.getline(s,100,n); cout请输入查找的字符串:endl; cin.getline(t,100,n); cout请输入替换的字符串:endl; cin.getline(t1,100,n); change(s,t,t1); cout替换后的新文本为:sLoadIcon(IDR_MAINFRAME);void CSearchReplaceStrDlg:DoDataExchange(CDataExchange* pDX) CDialo

7、g:DoDataExchange(pDX); /AFX_DATA_MAP(CSearchReplaceStrDlg) DDX_Text(pDX, IDC_EDIT1, m_strData); DDX_Text(pDX, IDC_EDIT2, m_strFind); DDX_Text(pDX, IDC_EDIT3, m_strReplace); /AFX_DATA_MAPBEGIN_MESSAGE_MAP(CSearchReplaceStrDlg, CDialog) /AFX_MSG_MAP(CSearchReplaceStrDlg) ON_WM_SYSCOMMAND() ON_WM_PAINT

8、() ON_WM_QUERYDRAGICON() ON_BN_CLICKED(IDC_REPLACE, OnReplace) ON_BN_CLICKED(IDC_SEARCH, OnSearch) /AFX_MSG_MAPEND_MESSAGE_MAP()/ CSearchReplaceStrDlg message handlersBOOL CSearchReplaceStrDlg:OnInitDialog() CDialog:OnInitDialog(); / Add About. menu item to system menu. / IDM_ABOUTBOX must be in the

9、 system command range. ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX AppendMenu(MF_SEPARATOR); pSysMenu-AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); / Set the icon for this dialog. The framework does this automatically / when the applications main window is not a dialog Se

10、tIcon(m_hIcon, TRUE); / Set big icon SetIcon(m_hIcon, FALSE); / Set small icon / TODO: Add extra initialization here return TRUE; / return TRUE unless you set the focus to a controlvoid CSearchReplaceStrDlg:OnSysCommand(UINT nID, LPARAM lParam) if (nID & 0xFFF0) = IDM_ABOUTBOX) CAboutDlg dlgAbout; d

11、lgAbout.DoModal(); else CDialog:OnSysCommand(nID, lParam); / If you add a minimize button to your dialog, you will need the code below/ to draw the icon. For MFC applications using the document/view model,/ this is automatically done for you by the framework.void CSearchReplaceStrDlg:OnPaint() if (I

12、sIconic() CPaintDC dc(this); / device context for painting SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0); / Center icon in client rectangle int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon = GetSystemMetrics(SM_CYICON); CRect rect; GetClientRect(&rect); int x = (rect.Width() - cxIc

13、on + 1) / 2; int y = (rect.Height() - cyIcon + 1) / 2; / Draw the icon dc.DrawIcon(x, y, m_hIcon); else CDialog:OnPaint(); / The system calls this to obtain the cursor to display while the user drags/ the minimized window.HCURSOR CSearchReplaceStrDlg:OnQueryDragIcon() return (HCURSOR) m_hIcon;void CSearchReplaceStrDlg:OnReplace() / TODO: Add your control notification handler code here程序源代码UpdateData(true); if(m_strFind.IsEmpty() AfxMessageBox(查找的字符串为空!);/判断编辑框字符串是否为空 return; int num; num=m_strData.Replace(m_strFind,m_strReplace);/替换字符串 CString str; str.Format(共完成了%d处替换,num); AfxMessageB

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1