2023-2024-1 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小时
-
改进情况:本周计划水平较上周有所进步