zoukankan      html  css  js  c++  java
  • C语言II博客作业01

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-2
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11757
    这个作业的目标 <复习循环,学习文件>
    学号 <20208991>

    一、本周教学内容&目标

    第6章 回顾数据类型和表达式,第12章 文件

    二、本周作业(总分:50分)

    2.1 题目:给定一个十进制正整数N,写下从1开始,到N的所有整数,然后数一下其中出现的所有“1”的个数。

    例如:N=2,写下1,2。这样只出现了1个”1“。N=12,我们会写下1,2,3,4,5,6,7,8,9,10,11,12。这样,1的个数是5。

    问题是:

    1.写出一个函数f(N),返回1到N之间出现的”1“的个数,比如f(12)=5;

    2.满足条件”f(N)=N“的最大的N是多少?要求:

    1.贴出代码图片,写出解题思路,列出测试数据(5分)


    最大的N是1111111110

    解题思路:使用循环的嵌套,外层for循环得到1到n个数,每一个数分别进入while循环,计算各个数字中含有1的个数,将他们的总和输出.

    2.给出不同测试数据的运算时间,如果你的运算时间不变,说明你的测试数据不够大(5分)

    3.思考针对足够大的数据,如何减少运算时间,并给出在原有算法基础上的改进算法和改进思路。(10分)

    2.2 将上题中多组测试数据写入文件,并给出测试程序以检测你的代码有没有问题,贴出你的代码、运行结果和文件内容。(5分)



    2.3 用自己的语言回答两个问题,并给出所查阅资料的引用(10分)

    1.什么是文件缓冲系统?工作原理如何?

    文件缓冲系统:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓冲区”,装满后再从内存“缓冲区”依此读入接收的变量。执行写文件的操作时,先将数据写入内存“缓冲区”,待内存“缓冲区”装满后再写入文件。 因此当程序运行时虽然进行了写数据操作,但是如果写入的数据没有装满内存中的缓##冲区,就不会将数据写入到磁盘文件中。当程序运行结束后,系统就会将缓冲区中的数据写入到磁盘上的文件中,因此就可以看到文件中的内容。

    工作原理:如果打开读,就只有输入缓冲区,打开写,则为输出缓冲区,如果读写则有两个缓冲区了。你不能获得这个缓冲区地址,如果要强行刷新缓冲区,需要利用函数,如fflush,缓冲区就是预先开辟的内存,你也可以自己实现,文件等到缓冲区满了再一次写入文件,或一次读入一个缓冲区数据,所有这些都是为了加快文件读写,因为文件读写是程序中最费##时的操作之一.

    2.什么是文本文件和二进制文件?

    文本文件:是一种以字符ASCII码值进行存储和编码的文件,其文件内容就是字符。C语言源程序是文本文件。文本文件与word文档相比,Word文档的长度远远大于该文件中包含的字符个数,而文本文件的长度刚好等于该文件中所含字符的个数。因为word文档中的文字有比较复杂的格式,而文本文件中的文字没有任何格式。在计算机领域,所谓文本就是不含任##何格式的文字。用Windows中附件程序里的‘记事本’编辑而得到的文件是文本文件。

    二进制文件:是存储二进制数据的文件。C程序的目标文件和可执行文件是二进制文件,它包括计算机才能识别的机器代码,如果也用编辑工具打开,将会看到稀奇古怪的符号,即乱码。(引用自 百度和教材)

    2.4 请给出本周学习总结(15分)

    1 学习进度条(5分)

    2 累积代码行和博客字数(5分)

    3 学习内容总结和感悟(5分)

    加油干,努力码代码,冲!

  • 相关阅读:
    入门菜鸟
    FZU 1202
    XMU 1246
    Codeforces 294E Shaass the Great 树形dp
    Codeforces 773D Perishable Roads 最短路 (看题解)
    Codeforces 814E An unavoidable detour for home dp
    Codeforces 567E President and Roads 最短路 + tarjan求桥
    Codeforces 567F Mausoleum dp
    Codeforces 908G New Year and Original Order 数位dp
    Codeforces 813D Two Melodies dp
  • 原文地址:https://www.cnblogs.com/yuchixiaolinjia9/p/14483952.html
Copyright © 2011-2022 走看看