1.printf打印字符串时和strlen()在计算字符串大小时是找\0的也就是0
2.一个源文件/一个工程的多个.c中只能有一个主函数main也必须有
3.创变量使建立初始值(跟好的风格)
4.float型只能存储到小数点后六位,如果指定输出大于六位的小数
情况下,应该使用double型,因为它比float型更精确
double类型的有效位数可以达到16位
5.一个大括号表示一个代码块
6.代码从上到下搜描,若定义在下则上面需要声明。故最好吧定义放在最上
7.scanf 的返回值是 读到有效数字的个数 END OR EOF(-1) (按Ctrl z 结束) 虽然EOF本质上被定义成-1但并不是输入-1而停止他仍会正常进行
数组名本质上就是地址,在scanf 时不用加&,如char password = “..”时的password
8.头文件内放着类型的定义 和函数的声明
9.打印保留小数点的数 %.1f(保留一位) %.2f(保留两位) 以此类推
10.最大公约数
a.最大值是两个数值中较小的那个值,故可以从大到小一一排除,排除到可以同时整除两个数即为最大公约数
b.辗转相除法:利用递归思想在函数内进行多次递归 用两个数中大的数来余小的数后,再用 小的数 来余上一次的余数若余数为零则为最大公约数
eg ,40>20 40%20==0,则20为最大公约数 36>27 36%27==9 27%9==0 故9...
11.#define是预处理指令
12.要用printf打印0.5 可以printf("%.1f\n",0.5f)
13.strcmp的返回值,以及字符串的比较方法
是比较他们的ASCII码值的大小,b < q
14.C语言中产生随机值的方法:time()函数会返回一个时间戳,rand()函数生成一个随机数,而在用rand在使用前需要调用srand(),,但srand内也需要传一个随机值,即srand(time())而time()函数内需要一个指针且需要无符号整形类型故(unsigned int)time(NULL)即可
头文件time():#include<time.h> srand():#include<stdlib.h>
注:srand((unsigned int)time(NULL)) 只用生成一次即可,调一次即放在主函数,否则数字相近不够随机
15.任何数%100都其范围都是0~99 若再加1,则范围变成1~100
16. m = a*b 中 a b 中至少有一个小于等于m的开平方 开平方函数:sqrt()头文件...<math.h>
17.注意if if 并用时一个if进了,另一个if将不会再判断
18.位数不够前导补零
下面的结果是00~01....~99
printf("%02d", hour, min);
19.最小公倍数:
a * b / 最大公约数
20.如果arr[] = {0},则这个数组内只能放一个元素