按照中国大学MOOC上浙江大学翁恺老师主讲的版本所作,B站上也有资源。原课程链接如下:
https://www.icourse163.org/course/ZJU-9001
由于是大三抽空回头整理的,所以可能前五章会记的内容比较简略。此外,作为选学内容的A0:ACLLib的基本图形函数和链表两章也没有做。西电的考试是机试,理论上学到结构体就能够应付考试了,但为了以后的学习考虑建议全学。
其他各章节的链接如下:
循环
几个细节:
如何让鼠标移到对应位置就能够查看变量的值?
循环
while
循环
就像if
一样,条件不满足就不断地做后面大括号里的句子
如果我们把while
翻译作”当“,那么一个while
循环的意思就是:当条件满足时,不断地重复循环体内的语句
循环执行之前判断是否继续循环,所以有可能循环一次也没有被执行
条件成立是循环继续的条件
看程序运行结果
人脑模拟计算机的运行,在纸上列出所有的变量,随着程序的进展不断重新计算变量的值。当程序运行结束时,留在表格最下面的就是程序的最终结果
验证
测试程序常使用边界数据,如有效范围两端的数据、特殊的倍数等
调试
在程序适当的地方插入printf
来输出变量的内容
do-while
循环
不管三七二十一,先做循环内的句子再判断条件
do-while
循环
两种循环
do-while
循环和while
循环很像,区别是在循环体执行结束的时候才来判断条件。也就是说,无论如何,循环都会执行至少一遍,然后再来判断条件。与while
循环相同的是,条件满足时执行循环,条件不满足时结束循环
数数几位数
程序要读入一个4位以下(含4位)的正整数,然后输入这个整数的位数。如:
输入:352,输出:3
循环应用
- 循环计算
- 猜数游戏
- 算平均数
- 整数求逆
几个注意点:
随机数
rand
和printf
,scanf
一样都是C语言标准库里的函数,每次召唤rand()
就得到一个随机的整数
%100
x % n
的结果是[0, n-1]的一个整数
随机产生一个1到100之间的数
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
srand(time(0));
int a = rand()%100+1;
printf("%d\n", a);
return 0;
}
srand(time(0))
设置随机数种子