- 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、通过编制一个源程序的输入、扫描程序,熟悉和了解从文件中读入数据到输入缓冲区的过程。
[实验步骤]:
1、准备: 用TC、VC++等开发工具;确定被处理的语言的语法特点(初步确定,可使用现成语言如Pascal、C等)。编好程序,写好实验报告。 2、上机:输入源程序,修改、调试,运行。
编程思想:
采用一个子程序实现的形式。
(1)程序判断源文件是否为NULL,如果是,则输出错误提示!如果不是,则进入循环。 (2)调用子程序readbuffer(),每次读入一个字符给字符变量,如果字符变量的内容不是回
车符,则把字符变量的内容存入数组buffer(),然后读入下一字符,再判断再存入数组,直到一行全存入数组,然后返回主程序,用输出语句输出刚才存入数组的一行字符; (3)如果没有到文件尾,则重复第(2)步,直到文件结束,则退出主程序,完成任务!
[程序要求]:
1) 在磁盘上建立一个文件A.c,文件内容输入如下一段C语言源程序。
2) 运行编制好的输入、扫描程序,要求运行的输出结果与输入的文件内容相同。
本次实验主要熟悉用C语言实现文件的输入和输出过程,编写这个程序要能实现从键盘输入若干行字符并写入文件中,然后从文件中读出字符,按照输入的格式输出在屏幕上。 首先在磁盘上建立A.c文件,文件内容如下:
A.c文件内容: main()
{ int a,b ,c;
a = 10; b=20; c=a+b; }
然后编写源程序并运行和调式,看输出的文件内容是否和输入的格式一样。
源程序: 输入、扫描程序源代码(仅供参考):
# include # include
# include int i;
FILE *fp;
char buffer[256]; //声明变量
int readbuffer() //读字符子程序开始 {
int j=0; char ch;
while(j256) {
ch=fgetc(fp);
if (ch==\\n) //字符变量的内容是回车符吗? {
i=j;return 0; //是回车符,保存字符个数返回0。 } // if
buffer[j]=ch; //不是回车符,把字符变量的内容存入数组buffer(),字符个数加1。
++j;
} // While return 1;
} //子程序结束
main() //main()开始 {
if((fp=fopen(\ //文件是否为NULL,这里的路径必须用两个斜
杠’\\\\’ ,其中一个是C语言中的格式符。
{
printf(\DOESN’T OPEN!\ //如果是,则输出错误提示。 exit(0); }
while(!feof(fp)) //到文件尾否,到文件尾feof()函数则返回非零值,循环结束。 { int j; j=0;
readbuffer(); //如果没有到文件尾,则读入一个字符 while(j
printf(\读入字符个数小于源文件语句行的字符个数,则输出字符 j++; //一行字符个数加一 }
printf(\ //否则输出回车 getch(); }
fclose(fp); getch();
} //main()结束 //程序结束
再将输入的A.c文件内容改为如下: d:\\\\a.c.。
main()
{ int sum=0,i;
float k;
scanf (\ for(i=0;isum =sum+i; } 再运行程序进行调试,输出必须与上面输入的原代码相同。 [实验报告]: 1、写出调试程序出现的问题及解决的方法。 2、写实验报告及程序清单。 3、报告给出测试的结果。
感谢您的阅读,祝您生活愉快。
您可能关注的文档
最近下载
- 电力机车DSA200受电弓课件.ppt VIP
- PLC应用技术(西门子S7-1200)全套PPT课件.pptx
- 13安全记心上第1课时 教案 2025道德与法治三年级上册.docx
- MPN计数法实验方法(附三管、四管、五管最大或然数表参考查询).docx VIP
- 2021 年全国一级建造师考试执业资格考试建筑-白金卷.docx VIP
- 动设备安装施工方案-动设备安装施工方案.docx VIP
- 书记员考试真题卷(4).pdf VIP
- GB6397-86金属拉伸试验试样.pdf VIP
- 社会稳定风险评估三方机构技术规程_2024最新版.pdf VIP
- 广东省佛山市中考英语预测卷(二十四).docx VIP
原创力文档


文档评论(0)