- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序的输入与汇编原理
实 验 报 告
实验项目名称: 源程序的输入和扫描
院 (系): 信 息 工 程 学 院
专 业: 计 算机科学与技 术
班 级: 2 0 1 3 级 计 科 本
2016年 3月 24日
实验类型: 验证性 □设计性
实验目的
理解源程序被编译器读取的过程,掌握扫描程序的方法。
三、实验内容
(1)编制一个源程序的输入过程,从键盘、文件或文本框输入若干行语句,依次存入输入缓冲区(字符型数据);
(2)编制一个扫描子程序,该扫描程序能删除无用的空白字符、回车字符以及其他与输入介质相关的非实质性字符,用“#”分隔单词流。
(3)删除注释信息。
四、实验环境
计算机,microsoft visual c++ 6.0
五、实验步骤
1 、功能描述
输入一段代码,扫描该段代码无用的空白字符等,用“#”分隔单词流、字母、数字或其他符号。
2 、程序结构描述
首先,输入一段字符串,然后对字符串进行扫描,判断字符串中,是否为单词或数字等,当遇到空白字符或者回车键时,用#隔开,最后,输出扫描结果。
3 、流程图(或原理图)
六、源程序
#includestdio.h
#includestring.h
char s[100];
char w[100];
int main()
{
int i, j;
gets(s);//抓住
i = strlen(s);
for(j = 0; j i; j++)
{
if(s[j]== )
printf(#);
if(s[j]= a s[j]=z|| s[j]=A s[j]=Z)//判断字符串是否是由字母组成的单词
{
if(s[j]!= )
printf(%c,s[j]);
}
if(s[j]==||s[j]==||s[j]===||s[j]===||s[j]==;||s[j]==(
|s[j]==)||s[j]==.||s[j]==+||s[j]==-||s[j]===||s[j]==*)
printf(#%c,s[j]);
if(s[j]=0s[j]=9)
printf(#%c,s[j]);
printf(#\n);
}
return 0;
}
七、实验结果图
八、实验心得
通过这次实验我对C语言的编写和检错又提升了一步,但是还是有许多的不足,像这次程序是为了掌握和了解程序的输入和扫描的过程,但是真正的定义还是很模糊经过同学的指点还有自己利用网络的一些学习才完成了这次实验。比如说在刚开始的时候,我甚至把gets(s)的用法都忘记了,于是下去翻阅c语言的课本才记起来在这次实验中gets()的用法很重要在开始输入字符串,然后取出字符进行判断,输入字符串判断字符串是否符合程序输入的要求,若为空格、回车则将其用“#”代替,数字也用“#”隔开,用“#”隔开单词流等并输出该字符串。老师发给我们的程序并不是全对的,这需要我们自己来进行修改和补充,老师发的运行结果并不对的,如图所示:
经过和同学一起讨论于是就做了上面的改变,当然这样的做法也并不是很完美,还有许多在修正的地方,例如字符的输出可以不要换行,同时在一行中输出来或许更好,这个实验中if语句也是非常重要的,一直使用if和else来对输入的字符串进行判断并用#号隔开,但是还有许多地方不明白,比如说什么时候使用输出,是放在if里面还是外面这我就分不清了,因为放在外面和里面运行出来的结果差别还是很大的。其实这个实验用c++来写还是很简单的,首先画出流程图,根据流程图来写程序那也是很简单的,但是细节还是得注意的,有些错误一眼就能检查出来,
但是有些却是很难找出来,找语句错误容易,然而找语义错误却很难。在这个过程我不仅学到了编译原理方面的知识同时对c语言也进行了巩固,更重要的是学到了做事要有耐心,要有恒心。
输入字符串
判断字符串是否符合程序输入的要求
用“#”隔开单词流等
若为空、回车则将其用“#”代替
结 束
输出用“#”的字符串
您可能关注的文档
- 清水池的消毒清洗及其的改造.doc
- 湖北省武汉市武昌区2016届高三元月调研考试数学(文)试题版含答案.doc
- 湖南移动协优项目LTE模拟考试试题(参考答案20140927).docx
- 湘版美术二年级上册美术教案.doc
- 浅探《三言二拍》公案中蕴含的儒家思想.docx
- 滥伐林木罪资料.doc
- 激光共焦显微镜2.doc
- 浅谈生物多样性价值评估.docx
- 激光散斑实验.docx
- 湖北省黄冈市2015-2016学年高二期末调研考试理科数学试题版.doc
- 专题04 选词或短语填空(含答案)-2025年人教PEP版(2024)新四年级 (三升四)小学英语暑假专题提升.pdf
- 专题13 完形填空--2025年新三年级 小学英语暑假专题提升(全国通用)(含答案).pdf
- 专题07-补全对话-五年级英语下学期期末专项练习(人教版(PEP)(含答案).pdf
- 专题02 语音词汇---2025年三升四 小学英语暑假专题提升(全国通用)(含答案).pdf
- 专题02 阅读理解 说明文【好题汇编】2023-2025三年高考真题英语分类汇编 含答案解析.pdf
- 1.3 有理数的大小(19张PPT) 数学沪科版(2024)七年级上册(内嵌音频+视频).pptx
- 专题05 讨论类文本阅读【真题汇编】(2021-2025)五年高考真题语文分类汇编 含答案解析.pdf
- 专题04-完形填空-(含答案)六年级英语下学期期末备考真题分类汇编(浙江专版).pdf
- 专题5 散文阅读 突破练25 纪实文学作品阅读--2026全国版高中语文第一轮教考衔接复习练(含解析).pdf
- 专题01 期末复习之语法填空30篇(名校真题)八年级英语下学期(牛津深圳版).pdf
最近下载
- 混凝土基础知识培训讲义.ppt VIP
- 唐志主编统计学原理习题答案.doc VIP
- 【2024】粤教粤科版科学五年级上册每课教学反思(带目录) .pdf VIP
- 2025年上半年教师资格考试高中地理学科知识与教学能力试卷与参考答案.docx VIP
- 引言-中国文学现代化发生.ppt VIP
- 音乐课件阳关三叠.ppt VIP
- 08-【四川】TF新区TIAN工大道绿化景观综合提升工程( 一期)设计方案-63页.pptx VIP
- 唐朔飞《计算机组成原理》精品教学:计算机组成原理(唐朔飞)复习资料.pdf VIP
- 《南湖的船,党的摇篮》课件 2025人教版音乐八年级上册.ppt VIP
- 音乐《辛德勒的名单》.pptx VIP
文档评论(0)