2023-2024-1 20231309 《计算机基础与程序设计》第十四周学习总结

发布时间 2023-12-31 22:23:46作者: 20231309

2023-2024-1 20231309 《计算机基础与程序设计》第十四周学习总结

作业信息

这个作业属于哪个课程 2023-2024-1-计算机基础与程序设计
这个作业要求在哪里 2023-2024-1计算机基础与程序设计第十四周作业
这个作业的目标 自学教材《C语言程序设计》第13章并完成云班课测试
作业正文 2023-2024-1 20231309 《计算机基础与程序设计》第十四周学习总结

教材学习内容总结

下图为《C语言程序设计》第13章梳理

教材学习中的问题

  • 问题1:对书上这段话不是很理解,不知道是每次输入一个字符,还是一次输入全部它一个一个存。
  • 解决方案:我使用书上的程序示例试着运行看(代码如下),运行结果反应是一次性输入全部到缓冲区,然后再从缓冲区一个一个字符写进去
#include <stdlib.h>
#include <string.h>

int main()
{
    FILE *fp;
    char ch;

    if ((fp = fopen("demo.txt","w")) == NULL)
    {
        printf("Failure to open demo.txt !\n");
        exit(0);
    }

    ch = getchar();

    while (ch != '\n')
    {
        fputc(ch, fp);
        ch = getchar();
    }

    fclose(fp);
    return 0;
}
  • 问题2:看书上对fflush的介绍不知道它是直接清除缓冲区,还是强制写进文件
  • 解决方案:询问GPT后得知,fflush函数用于刷新一个输出流。在 C 语言中,写入文件或终端的输出通常会被存储在缓冲区中。这样做可以提高程序的效率,因为频繁地直接写入硬盘或终端会比较慢。fflush 函数用于将缓冲区中的数据强制写入其对应的文件或终端。

基于AI的学习

(以下为对话记录)









代码调试中的问题和解决过程

  • 问题1:缓冲区溢出实验准备出错,python相关安装失败

  • 解决方案:实验楼中没有Python的安装包,把安装命令中的python相关参数删去即可

  • 问题2:缓冲区溢出实验编写漏洞程序后编译出错

  • 解决方案:直接复制程序代码导致多一个换行,将其删去即可

  • 问题3:web部署实验相关软件安装失败

  • 解决方案:需要在安装命令最后加一个参数 --nogpgcheck关闭校验

  • 问题4:web部署实验wordpress网址访问失败

  • 解决方案:本错误原因较多,以下简要列举:
    a--ip地址错误,应为华为云服务器公网ip
    b-网址错误,应按实际存储情况定位至相应位置,如我的是ip/wordpress/
    c-安全组与开放端口设置有误,需要在华为云系统开放80端口与ICMP协议
    d-进入网址后输入用户名等应与先前设置的保持一致
    e-相关php需要具有合适的权限

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 2/2 12/12
第二周 10/10 1/3 7/19
第三周 60/70 4/7 12/31
第四周 120/190 3/10 12/43
第五周 260/450 2/12 16/59
第六周 250/700 4/16 12/71
第七周 400/1100 1/17 14/85 学习程序编写规范
第八周 400/1500 2/19 10/95 学习模块化编程
第九周 500/2000 1/20 7/102 学习指针的使用
第十周 500/2500 1/21 11/103 学习字符串函数
第十一周 500/3000 1/22 12/115 学习结构体的使用
第十二周 500/3500 1/23 10/125 学习文件相关操作
第十三周 750/4250 2/25 12/137 学习OpenEuler下使用GPG
第十四周 450/4700 1/26 13/150 学习web部署,再次学习Linux常用命令
  • 计划学习时间:15小时

  • 实际学习时间:13小时

  • 改进情况:本周计划水平较上周有所进步

参考资料