c语言中sin怎么表示?
首先,要用到数学函数,需要包含头文件math.h
其次,如果x不是弧度,需要转换为弧度,如果x本身是弧度,则可以写为:sin(x)
如果x不是弧度,可以写为:sin(60*3.1415926/180)
数据类型是有符号类型,负数就和数学里的负数一样。int 的取值范围是-32768~32767,只要不越界就行
C语言按位左移运算规则?
C语言中按位左移的运算符为<<,其规则如下:
对于操作a<<n,
1 按照二进制值每位向高位(书写上是向左)移动n位;
2 最高位(最左边的)n位舍去;
3 最低位(最右边)填加n个0.
简单起见,用char型举例如下:
例一
0x12 << 3 =>
B00010010 << 3 =>
B10010 000(这里最高位的三个0被舍去,其它依次左移,最低位补三个0) =>
0x90
即0x12 << 3 = 0x90
例二
0x9E << 2 =>
B10011110 << 2 =>
B01111000 (最高位10舍去,最低位补两个0)=>
0x78
可以编写如下程序验证:
#include <stdio.h>void check(char a, int n){ printf(“0x%hhx << %d = 0x%hhxn”, a, n, a<<n);}int main(){ check(0x12, 3); check(0x9e, 2); return 0;}
其运行结果为
0x12 << 3 = 0x900x9e << 2 = 0x78
可以看到与我们计算结果是相符的。