C语言II博客作业01
一.作业头
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-3/ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-3/homework/11752 |
这个作业的目标 | <学习文件相关知识,学会用程序测试程序> |
学号 | <20209166> |
二、本周作业
2.1 题目:给定一个十进制正整数N,写下从1开始,到N的所有整数,然后数一下其中出现的所有“1”的个数。
1.写出一个函数f(N),返回1到N之间出现的”1“的个数,比如f(12)=5;
解题思路:先赋值,然后再计算每个数位上是否为1。
测试数据:
测试数据 | 时间 | 结果 |
---|---|---|
100 | 0.000000s | 21 |
9999999 | 0.214000s | 7000000 |
999999999 | 26.993000s | 900000000 |
2.满足条件”f(N)=N“的最大的N是多少?
2.2 将上题中多组测试数据写入文件,并给出测试程序以检测你的代码有没有问题,贴出你的代码、运行结果和文件内容。
2.3 用自己的语言回答两个问题,并给出所查阅资料的引用
1.什么是文件缓冲系统?工作原理如何?
文件缓冲区即系统在读写程序时在内存中开辟的数据源与数据目标中间的一个用于保存完整数据内容的缓冲区域。
原理:当程序要向磁盘文件写入数据时,先把数据存入缓冲区,然后再由操作系统把缓冲区的数据
真正存入磁盘。若要从问件读入数据到内存,先由操作系统把数据存入,然后程序把数据从缓冲区读入到内存。
2.什么是文本文件和二进制文件?
文本文件是一种计算机文件,它是一种典型的顺序件,欺文件的逻辑结构又属于流式文件。
二进制文件是除文本文文件之外的所有文件。
2.4 请给出本周学习总结
1.学习进度条
周/日期 | 这周所花时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的地方 |
---|---|---|---|---|
1/3.1-1/3.7 | 12h | 116 | 引用文件,设计程序来测试程序 | 函数的使用,和计算程序运算时间 |
2.累积代码行和博客字数
3.学习内容总结和感悟
在经过寒假休息后,对于之前的一些知识可能已经不记得了。在这次作业中就体现出来了,我觉得有必要去温故一下知识,还有就是感觉往后的学习越来越难,有必要在这堂课上花更多的时间去学习。就像这次,老师在课上并没有过多的讲文件,反而是我自己去学习,并加以运用。但是仍然有些不懂的地方。