课程设计字符串的操作Word下载.docx
- 文档编号:21921929
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:14
- 大小:52.29KB
课程设计字符串的操作Word下载.docx
《课程设计字符串的操作Word下载.docx》由会员分享,可在线阅读,更多相关《课程设计字符串的操作Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
1.4软硬件运行环境及开发工具………………………………………………2
2.概要设计……………………………………………………………………………2
2.1课题设计的流程(各功能模块)…………………………………………2
2.2主要的数据结构、完成本课程设计所用方法及其原理的简要说明。
…2
3.详细设计……………………………………………………………………………3
3.1计算机程序框图……………………………………………………………3
3.2自编的程序…………………………………………………………………3
3.3程序截图…………………………………………………………………10
4.调试分析……………………………………………………………………………10
5.课程设计总结与体会……………………………………………………………10
6.致谢………………………………………………………………………………10
7.参考文献…………………………………………………………………………11
1.需求分析
当代社会是个信息化的社会,几乎所有的作业都可以使用计算机来完成,文字处理也不例外,本课程设计就是在C语言环境中模拟一些简单的文字处理操作,为以后从事这方面工作打下基础。
1.1课程设计题目
字符串的操作
1.2课程设计任务及要求
(1)字符串采用数组存储,建立两个字符串String1和String2。
输出两个字符串。
(2)将字符串String2的头n个字符添加到String1的尾部。
输出结果。
(3)查找串String3在串String1中的位置,若String3在String1中不存在,则插入String3在String1中的m位置上。
1.3课程设计思想
根据课程设计任务及要求,将课程设计划分成若干部分,根据每部分的要求,分别完成要求编写程序。
1.4软硬件运行环境及开发工具
软件的运行环境及所用的开发工具是VC6++。
2.概要设计
2.1课题设计的流程(各功能模块)
本系统
主要是对字符串进行操作,由于包括两种不同的功能,所以基本包括3个模块:
(1)主界面模块,显示本程序具有的功能和操作选项。
(2)功能一操作模块,两个功能并不相同,所以需分开组织。
(3)功能二操作模块。
主要的数据结构:
结构体的运用以及对结构体的操作。
完成课程设计的方法及原理的说明:
根据题目的要求对课程设计做了各个模块的划分,按照各模块功的不同做不同的处理,最后通过对各个模块的调用达到完成课程设计的方法。
3.详细设计
3.1计算机程序框图
3.2自编的程序
#include<
string.h>
stdio.h>
voidxuanze(intitem);
voidxuanze1(intitem);
voidstring1(char*str1);
voidstring2(char*str2);
voidinsert(char*str1,charstr2[]);
voidfind(charstr1[],charstr3[]);
voidmenu(void)/*菜单*/
{
intitem;
printf("
\n…………………欢迎使用字符串处理程序…………\n\n"
);
\t.\t1.…………添加数据………….\t\t.\n"
\t.\t2.…………检查数据………….\t\t.\n"
\t.\t0.…………退出系统………….\t\t.\n\n"
\t………………………………………………………\n"
请输入要进行的操作:
"
);
scanf("
%d"
&
item);
if(item>
3||item<
-1)
{
请重新输入要进行的操作:
menu();
}
else
xuanze(item);
}
voidxuanze1(intitem)
charstr1[100],str2[100];
\t.\t1.…………添加数据一………….\t\t.\n"
\t.\t2.…………添加数据二………….\t\t.\n"
\t.\t0.…………返回上一级………….\t\t.\n"
if(item>
xuanze1(item);
elseswitch(item)
case1:
string1(str1);
xuanze1(item);
break;
case2:
string2(str2);
xuanze1(item);
case0:
menu();
default:
printf("
error!
\n"
voidxuanze(intitem)
{
charstr1[100],str2[100],str3[100];
switch(item)
{
case0:
//getchar();
/*退出*/
\n…………………………………………………………………"
\n\t.\t\t\t\t\t\t."
\n\t.字符串操作系统."
\n\t.欢迎下次使用."
\n…………………………………………………………………\n\n\n\n"
//exit
(1);
break;
case1:
insert(str1,str2);
//getch();
case2:
printf("
请输入字符串3:
string1(str3);
find(str1,str3);
}
}
voidstring1(char*str1)
请输入字符串一:
gets(str1);
您输入的字符串为:
"
puts(str1);
voidstring2(char*str2)
请输入字符串二:
gets(str2);
puts(str2);
voidinsert(char*str1,charstr2[])
charstr[100];
inti,n,m;
要把字符串2的前几个字符插入到字符串1后面?
n);
m=strlen(str2);
数组的实际长度为m=%d:
m);
if(n>
m)
printf("
您输入的数大于字符串2的长度!
将按照字符串2的全长处理。
strncpy(str,str2,m);
strcat(str1,str,m);
操作成功!
for(i=0;
str1[i]!
='
\0'
;
i++)
printf("
%c"
str1[i]);
//exit(0);
strncpy(str,str2,n);
strcat(str1,str,n);
i<
m+n-1;
//exit;
//串三在串一中的位置
voidfind(charstr1[],charstr3[])
inti=0,j=0,m,flag=1;
//for(i=0,str1[i]!
i++)
m=strlen(str3);
m);
while(str3[j]!
&
flag==1)
if(str1[i]==str3[j])
{
j++;
flag=0;
}
elsei++;
for(j=0;
j<
m&
flag==1;
)
if(str1[i++]==str3[j])
j++;
j);
else
flag=0;
if(flag==0)
printf("
请输入要插入的位置m:
voidmain()
while
(1)
menu();
3.3程序截图
图人机交互界面
4.调试分析
在完成各个模块之后,对各个模块进行检测,根据调试环境的编译器的提示,把出现的错误改正,然后,对各个模块进行数据检测,已确保课程设计的完成及准确。
5.课程设计总结与体会
本程序经过测试,证明其运行是稳定、可靠的。
但在系统设计中也也遇到很多的问题,并且本系统的功能还需要不断的完善和改进,在以后空闲时间里逐一进行完善,使系统功能更加完善。
6.致谢
编程看起来似乎是一件很枯燥、乏味的事情,但是经历了这次程序的编辑之后,发现其实里面还是充满乐趣的,一旦真的专研下去什么事情都可以放下,来认真研究。
只有把所学习的知识用起来,才能真正体会学习的目的,在应用中去学习,理论和实际结合才是好的学习方法,这次的课程设计也让我对自己所学的数据结构的知识有了更加进一步的了解。
在此,我由衷地感谢代课的马强老师,您在课堂上讲的内容让我受益匪浅,在这次课程设计中许多都能派上大用场,真心谢谢您的栽培。
7.参考文献
[1]苏仕华等编著.数据结构课程设计[M].北京:
.机械工业出版社,
2005.
[2]严蔚敏吴伟民编著.数据结构(C语言版)[M].北京:
清华大学出
版,2002.
[3]谭浩强著.C程序设计[M].北京:
清华大学出版社,2005.[4]何玉洁.数据库原理与应用教程[M].北京:
.机械工业出版社.2003年.[5]余苏宁王明福编著.C++程序设计[M].北京:
高等教育出版社,2004.
指导教师评语:
指导教师签名:
年月日
成绩评定
项目
权重
成绩
1、设计过程中出勤、学习态度等方面
0.1
2、设计技术水平
0.4
3、编程风格
0.2
4、设计报告书写及图纸规范程度
0.3
总成绩
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 字符串 操作