int main ()
{
int line = 0;
printf("加入比特\n");
while(line < 20)
{
printf("敲一行代码:");
printf("%d\n", line);
line++;
}
if(line >= 20)
{
printf("好offer\n");
}
return 0;
} 函数
//自定义函数
int Add(int x, int y)
{
int z = x + y;
return z;
}
int main()
{
int num1 = 10;
int num2 = 20;
int sum = 0;
int a = 100;
int b = 200;
//sum = num1 + num2;
//调用函数
sum = Add(num1, num2);
//sum = a + b;
sum = Add(a, b);
printf("num = %d\n", sum);
return 0;
}
数组
//C语言给数组的定义:一组相同类型元素的集合
int main()
{
/int a = 1;
int b = 2;
int c = 3;
int d = 4;/
//int arr[10];// 定义一个存放10个整数数字的数组
//每一个数组都有一个下标
//下标是从 0 开始到 (数组长度 - 1)
int arr[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
//0-9
int i = 0;
while(i < 10)
{
printf("%d", arr[i]);
i++;
}
//printf("%d\n", arr[i]);
//arr[下标];
//char ch[20];
//float arr2[6];
int main()
{
int a = 5/2 ;//2
//% 取模
int a = 5%2 ;//1
printf("%d\n", a);
return 0;
}
移位操作符 >> <<
int main()
{
//移(2进制)位操作符
// << 左移
// << 右移
int a = 1;
//整型1占4个字节-- 32bit位
int b = a << 2;
printf("%d\n", b);
return 0;
}
位操作符 & ^ |
int main()
{
//(2进制)位操作
// & 按位与
// | 按位或
// ^ 按位异或
int a = 3;
int b = 5;
//按位与
//int c = a & b;
//a 转换为2进制是 011
//b 转换为2进制是 101
//按位都为 1 才为 1 ,按位只要有一个为 0 结果为 0
//所以 c 的二进制是 001
//转换为十进制是 1
//按位或
int c = a | b;
//按位只要其中一个为 1 就为 1 ,全为 0 才会为 0
//所以 c 的二进制是 111
//转换为十进制是 7
//按位异或
int c = a ^ b;
//按位不同为 1 ,按位相同为 0
//所以 c 的二进制是 110
//转换为十进制是 6
printf("%d\n", c);
return 0;
}
赋值操作符 = += -= *= /= &= ^= >>= <<=
int main()
{
int a = 10;
a = 20; // = 赋值 == 判断相等
//a = a + 10;
a += 10;//与 a = a + 10; 完全等价
a = a & 2;
a &= 2;
//复合运算符(注意中间不能有空格)
//+= -= = /= &= ^= >>= <<=
return 0;
}
// ~ 二进制取反
int main()
{
int a = 0;//4个字节,32个bit位
int b = ~a;//b是有符号的整型
// ~ - 按(2进制)位取反
//00000000000000000000000000000000
//11111111111111111111111111111111
//原码、反码、补码
//负数在内存中存储的时候,存储的是二进制的补码
//11111111111111111111111111111111 补码
//补码 --> 反码 二进制数减1
//11111111111111111111111111111110 反码
//反码 --> 原码 符号位不变 其他全部取反
//10000000000000000000000000000001
//最前面的1表示负号
//没有时是正数
printf("%d\n", b);//使用的,打印的是这个数的原码
return 0;
}
// ++ 自加 --自减
int main()
{
int a = 10;
//int b = a++;//后置++ ,先使用,再++
//printf("a = %d b = %d\n", a, b); // 11 10
//int b = ++a;//前置++ ,先++ ,再使用
//printf("a = %d b = %d\n", a, b); // 11 11
//int b = a--;//后置-- ,先使用,再--
//printf("a = %d b = %d\n", a, b); // 9 10
int b = --a;//前置-- ,先-- ,再使用
printf("a = %d b = %d\n", a, b); // 9 9
return 0;
}
//(类型) 强制性类型转换
int main()
{
int a = (int)3.14; // 将3.14的double类型 --> 转换为int类型
return 0;
}