«

C语言考试笔记

Sweetiey 发布于 阅读:349 课程笔记


https://www.onlinegdb.com/

 专题训练2023(student).pdf

习题及答案2020.pdf

常用的数学函数:

求几次方,开根号:

C语言考试笔记

//c = pow((a * a + b * b), 0.5);

求指数:

//a = exp(1);e^1

求ln:

C语言考试笔记

//a = log(log(103.5+2));  

求log10( ):

log10();


类型转换:

下面表达式计算中,哪些地方会发生类型转换?

2.5+2*7%2/4  

这个表达式先运算乘除之类的,后加减2*7=14,14对2求余=0,0/4=0,2.5+0=2.5;

10/(5*3)

这个表达式里面都是int类型,先算括号里面的,5*3=15,10除以15,因为是int类型,结果比一小,所以结果为0;

如果换成下面这样:

10.0/(5*3)  或者     10/(5.0*3)

只要分子或者分母有一个是小数,那么就用double(floafloat)类型运算,结果就是0.666667;



C语言考试笔记

16.00 = =a/2+b*x/y+1/2; 因为a为int类型,a/2等于9/2=4,1/2=0;所以16.00 = =4+2*x/1.1+0,x = (16-4)x1.1÷2 = 6.6


转义字符:

C语言考试笔记

C语言考试笔记

奇葩表达式:

C语言考试笔记

(++x,y++) 这叫逗号表达式,里面含2个表达式,表达式的最终值用最后一个表达式的结果。而y++先printf,再自加,所以输出 3,z+2也输出3


C语言考试笔记

这个while()里面是一个赋值语句,如果循环里没有跳出的语句比如break,那么这个while就一直为真,是死循环。

首先,a=a+2,a的值变为12,y=a+0=12,打印出来,此时y小于20,while(a=14)把a赋值为14,再进行下一个循环。

a=a+2,a=14+2=16,y=a+y=14+12=26,打印出来,y大于20,跳出循环。


C语言考试笔记

这个char里面是 \n 1 2 3 \ \0

strlen是这个数组长度,这个char数组里面有5个元素(不包括\0),所以是5。一个char是一个字节,sizeof包括了\0,所以是6。对于这种定义的时候没有确定数组长度的是这样。strlen 统计 \0 之前所有字符的个数。sizeof 计算的是变量的大小,不受字符 \0 影响.但是对于确定了长度的比如ch[5]=“ngm",因为已经确定了长度是5,所以strlen是3,sizeof是5。


实参和形参:

C语言考试笔记

C语言考试笔记


C语言考试笔记

p1是地址,*p1是地址的内容,a=p1==&m,p1的地址是否等于m的地址,如果相等,则a=1,否则a=0



C语言


扫描二维码,在手机上阅读
收到3条评论
avatar
2023-12-23 18:45
回复
avatar
Sweetiey 2023-12-23 18:41
选择排序:https://c.biancheng.net/view/531.html
回复
avatar
Sweetiey 2023-12-23 18:41
冒泡排序:https://blog.csdn.net/xianming_flag/article/details/110401128
回复