1、float和double不能进行取余操作。
1、逻辑非
2、逻辑与
例子:
if((a-1)
如果为真则自增,为假不自增
3、逻辑或
4、位运算
1)位逻辑反(按二进制位取反!)
2)位逻辑与
3)位逻辑或
4)异或
5)移位运算
5、或运算可以快速把某一位置1
把x的第2位置1
6、与运算可以快速把某一位置0
把x的第三位置0
7、把一个十进制数转换成一个十六进制数
8、赋值运算符
9、三目运算符
若表达式1为真,执行表达式2,否则执行表达式3
1)例子
10、逗号运算符(从左往右依次运算,然后把最右边式子的值赋给变量)
前面的必须是等式/y++,最后一个可以是一个值也可以是一个等式/y++
11、sizeof()
可以判断数据类型(int float...),也可以是变量(a,b,c...)
12、运算符的优先级
13、z是bool
一、字符输出函数
1)例子
二、格式输出printf
1、例子
2、特例:输出%
3、附加说明符
1)m
1、如果位数小于m,左边补0,如果位数大于m,则无效,原样输出
2、浮点数,小数点也算一位 123.456 %8d ----前面空一格
2).n
3)字符串的m.n
m:表示空格
.n:表示从前到后保留几个字母
4)+:显示符号
0:用0填充取代空格
4、字符输入函数getchar
ctrl+d结束输出
5、
1)提示语句最好是单独写一行
scanf("%4d",&a)-----控制第一个是4字符(因为没有换行,可以不用回车换行)
2)*nd吸收的值不会赋给变量
6、在输入字符中,空格也会作为有效字符,ascII为32
7、格式的垃圾处理
三种方法
8、字符串的输出
1)字符串通常存放在数组中
2)通常用gets()函数吸入
3)字符串输入通常少1位,默认以\0结尾
4)gets函数并不以空格作为结束,但scanf是
5)puts函数不需要换行符,自动换行
1、阶梯型
if和else后面都要加{}
2、注意事项
3、求三角面积
一、应用场景
1、多分支选择结构
2、判断7种文件类型bcd-lsp
二、语法
1、switch里的数据类型可以是整型、枚举、字符。其他类型不同
2、枚举类型
默认从0开始
三、break的作用
强行跳出switch体
如果没有break,则不会跳出switch
四、例子-成绩分级
一、循环结构
二、goto语句的格式!!!
loop:
if()
goto loop;
goto的优点:
集中于一处释放的应用:内存释放、文件描述符关闭、网络关闭、数据库关闭
三、while循环
1、1+...100求和
四、do-while
1、do while和while的区别:do while不管条件是否满足,肯定会执行一次。
2、求和例子
1、for循环的省略
一、
1、一维数组
1、数组的地址是连续的
2、数组的地址是第一个数据的地址
3、数组的长度是n个数据的长度
4、语言数组越界,编译器不管
5、只能逐个数组元素引用,不能一次引用整个数组。
6、下标可以是常量,也可以是整型表达式
7、
二、冒泡排序
1、计算数组长度
n=siziof(a)/sizeof(int)
2、代码
定义:程序因为特殊情况提前结束代码
一、break:判断是不是;打印是
可以跳出循环,但只能跳一层循环
有两个限制条件
打印半径1-10,但是面积不超过100的半径对应的面积
素数练习:
如何跳出多层循环
二、continue
结束本次循环,但是继续下一次
除了特殊条件,打印其他
1、例子:打印从100-110,不是3倍数的数字
三、return
1、sizeof可以判断数据类型(int float...),也可以是变量(a,b,c...)
编程注意点
2、b++:先运算后自增
++b:先自增后运算
3、调格式:命令行界面gg=G
4、#include
开方:sqrt()
取绝对值:abs
n次方pow(变量,n)
5、\t水平制表符,相当于tab,通常宽度相当于8个空格