C测试系统设计

#前言

因为必须要给同学们的C程序看代码,但是挨个手工检查也太麻烦且耗时间了,所以还是弄个小小的测试系统吧。

C语言编程注意事项

最近解答了好多疑问,对大家的期末考试十分堪忧啊

答应我,下面这些错误不要再犯了好吗。

C程序设计基础-第二次作业

#作业要求

#注意事项

  1. 可以重复提交。
  2. 注意文件命名里的括号是英文的括号不是中文的。
  3. 题号按照文档中的题号7-12
  4. 文件提交.c或.cpp文件,不要压缩,六道题分别发送。
  5. 测试结果页面黄色代表未通过所有测试,红色代表编译未通过,绿色代表通过。
  6. 按照文档的要求输入输出,不要自己加提示语句,不然会按照错误算的。
  7. 测试结果已经加了时间,如果发现自己上传了上面还没显示,表面文件命名错误了,仔细核对一下命名格式。
  8. 测试结果页面学号下的输入框可以输入自己的学号筛选,方便查看所有题目的通过情况。
  9. 判断日期非法不用考虑闰年,只需考虑1月天数不能大于31天,2月不能大于29天…月份不能大于12这种。
  10. 建议大家写完一道题之后就上传,这样就知道如何通过测试系统的测试,因为要按照文档的要求输入输出。
  11. 大家交完之后最后检查一下自己是不是12道都提交正确了,比如那种学号少打一位的同学,到时候可能要算你没提交了。

C语言中float的精度问题

#问题

1
2
3
4
5
6
7
8
#include <stdio.h>

int main()
{
float a = 123456789;
printf("%f", a);
return 0;
}

上述代码的输出结果为:123456792.000000,为什么?

阿里云动态修改域名解析

#20211007 更新

python2 版本太古老了,又弄了一个 golang 版本的,移植性更强:https://github.com/onns/ddns

主要用到两个 api:

#20210215 更新

大概写这个脚本的人也不知道原来会有一个个人用户的域名解析记录会有几十个,导致代码找不到解析记录…
修改了脚本,使得每次获取的记录数更多,如果还是找不到,自己去看一下翻页的方法吧,阿里云的文档压根儿没有,我也是醉了。

#前言

宿舍放着一台换下来的旧手机 Mi5,平时除了双开好像就没用过,抱着闲置物品再利用的原则,在上面装了个 centos 系统,但由于宿舍的宽带是动态 ip 的,如果每次都要手动重新解析域名,那也太麻烦了。于是想设定定时任务自动解析,折腾一番,记录之。