- 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
[实验内容]:
1、 编制一个源程序的输入、扫描程序,从文件中每次读入一行到输入缓冲区(可以用字符数组实现); 然后从缓冲区中依次取出字符显示在屏幕上。
2、 从文件每次读入一行到输入缓冲区的功能(可以用字符数组实现)用一个子程序实现。
[实验目的]:
1、通过编制一个源程序的输入、扫描程序,熟悉和了解从文件中读入数据到输入缓冲区的过程。
[实验步骤h
仁准备:用TC、VC++等开发工具;确定被处理的语言的语法特点(初步确定,可使用现成语言如 Pascak C等)。编好程序,写好实验报告。
2、上机:输入源程序,修改、调试,运行。
编程思想:
采用一个子程序实现的形式。
(1) 程序判断源文件是否为NULL,如果是,则输出错误提示!如果不是,则进入循环。
(2) 调用子程序readbuffer(),每次读入一个字符给字符变量,如果字符变量的内容不是回车符,则把字 符变量的内容存入数组bufferO,然后读入下一字符,再判断再存入数组,直到一行全存入数组,然 后返回主程序,用输出语句输出刚才存入数组的一行字符;
(3) 如果没有到文件尾,则重复第(2)步,直到文件结束,则退出主程序,完成任务!
[程序要求]:
1) 首先在E盘上建立一个A.c文件,文件内容如下:
A?c文件内容:
main()
{ int a, b , c;
a = 10; b=20;
c=a+b;
}
2) 然后用C语言编写一个输入、扫描程序,实现将E盘上建立的文件内容读入缓冲区,并在屏幕上输出 该文件内容,要求运行的输出结果与输入的文件内容相同。运行和调式程序,看输出的文件内容是否 和输入的格式一样。
本次实验主要熟悉用C语言实现文件的输入和输出过程,目的就是让同学了解如何实现从键盘输入 字符串并写入文件中,然后从文件中读出字符,并按照输入的格式输出在屏幕上。
源程序:输入、扫描程序源代码(仅供参考):
includestdio.h
includestdlib.h
includeconio.h
int i;
FILE *fp;
char buffer[256];
〃声明变量
int readbuffer() 〃读字符子程序开始
intj=O;
char ch;
while(j256)
{
ch=fgetc(fp); if(ch=\nf) 〃字符变量的内容是回车符吗?
{
i=j;return 0; 〃是回车符,保存字符个数返回0。
} //if
buffer[j]=ch; 〃不是回车符,把字符变量的内容存入数组bufTerO,字符个数加 T;
} //While
return 1;
} 〃子程序结束
main() 〃main()开仪台
{
if((fp=fopen(nd:\\a.cn,nrH))==NULL) 〃文件是否为NULL,这里的路径必须用两个斜杠卞
是C语言中的格式符。
其中一个
{
printffTHE FILE DOESNT OPEN! ”); 〃如果是,则输出错误提示。
exit(O);
while(!feofVp))
//到文件尾否,到文件尾feof()函数则返回非零值,循环结束。
{
intj;
j=0; readbuffer(); while(ji)
〃如果没有到文件尾,则读入一个字符 〃判读入一行的字符个数
printf(H%cn,bufferU]); 〃读入字符个数小于源文件语句行的字符个数,则输出字符 j++; 〃一行字符个数加一
〃否则输出回车
getch();
fclose(fp);
getch();
} 〃main()结束
〃程序结束
再将输入的A.c文件内容改为如下:
d:\\a.c.o
main()
{ int sum=O,i;
float k;
scanf (n%f plese input (0-100) to total !,k)
fbr(i=0;i<k;汁+)
sum =sum+i;
}
再运行输入、扫描程序进行调试,输出必须与上面a.c文件小输入的代码相同。 [实验报告]:
1、 写出调试程序出现的问题及解决的方法。
2、 写实验报告及程序清单。
3、 报告给出测试的结果。
实验二无符号数的有穷自动机的实现
学时数:4
[实验内容]:
无符号数的有穷自动机的实现。利用状态表和有限自动机的运行原理编制程序,使得程序能够识 别一个输入串是否为一个无符号定点实数。
[实验目的]:
1、 理解有限自动机的作用;进一步理解自动机理论。
2、 用状态图和状态表表示有限自动机;
3、 以程序实现有限自动机的运行过程;掌握文法转换成口动机的技术及有穷口动机实现的方法。 [实验要求]:
1、 设计要求:利用状态图或状态表相关理论,利用有限自动机理论。
2、 功能要求:输入一个单行无空格的字符
您可能关注的文档
最近下载
- 七年级上册语文第一单元重点内容整合练习含答案及解析.pdf
- 植物界 一、植物界的主要类群.ppt VIP
- 【36页PPT】CQI23模塑系统评估.pptx VIP
- 全科医生转岗培训模拟练习题附答案6.doc
- 2022-LY-022林地保护利用规划林地落界技术规程.pdf VIP
- (高清版)W-S-T 403-2024 临床化学检验常用项目分析质量标准.pdf VIP
- YYT1437-2023 医疗器械 GBT42062应用指南.pdf VIP
- 2025年全国导游资格证考试《全导+地导》真题卷(含答案).pdf VIP
- CBT 3000-2019 船舶生产企业生产条件基本要求及评价方法.docx VIP
- 交通事故案例分析.ppt VIP
文档评论(0)