初识C语言
初识C语言
1.初识选择语句
选择语句基本雏形
if()
{
}
else
{
}
2.初识循环语句
循环语句基本雏形
1.while()
{
}
2.do
{
}while();
3.初识函数
认识函数
#include<stdio.h>
int Add(int a,int b)
{
int c=a+b;
return c;
}
int main()
{
int x=0,y=0;
scanf("%d %d",&x,&y);
int z=Add(x,y);
printf("%d",z);
return 0;
}
这里的Add就是我们自己创建的函数。
4.初始数组
认识数组
数组:一组相同类型的元素的集合。
char arr[5]={
'a','b','c'}; //不完全初始化,剩余的默认为0;
这里的arr[5]就是我们所创建的函数。
计算数组个数
int sz=sizeof(arr)/sizeof(arr[0]);
sizeof1
5.初识操作符
1.操作符
算数操作符 | + - / % | 加 减 乘 除 取模 |
---|---|---|
移位操作符 | >> << | 向右移 向左移(移动的是二进制) |
位操作符 | & l ^ | 按位与 按位或 按位异或 |
赋值操作符 | = += -= = /= &= ^= l= >>= <<= | 等于 加等于 减等于 乘等于 除等于 按位与等于 按位异或等于 按位或等于 向右移位等于 向左移位等于 |
2.单目操作符2
! | 逻辑饭操作 |
---|---|
(-) | 负值 |
(+) | 正值 |
& | 取地址 |
sizeof | 操作数的类型长度(一字节为单位) |
~ | 对一个数的二进制按位取反 |
– | 前置、后置– |
++ | 前置、后置++ |
(*) | 间接访问操作符(解引用操作符) |
(类型) | 强制类型转换 |
解释单目操作符中的一些操作符
1. ~
一个整数在内存中存储的是补码。
#include<stdio.h>
int main()
{
int a = 0;
printf("%d", ~a);//-1
}
结果为-1。
题解: 0的二进制为 00000000 00000000 00000000 00000000(原码)。
~0变为 11111111 11111111 11111111 11111111(补码)。
~0 (的二进制是补码的原因:一个整数在内存中存储的是补码) \color{red}{(的二进制是补码的原因:一个整数在内存中存储的是补码)} (的二进制是补码的原因:一个整数在内存中存储的是补码)
第一步:开始由补码推反码 11111111 11111111 11111111 11111110(反码)。
第二步:开始由反码推原码 10000000 00000000 00000000 00000001(原码) ( − 1 ) \color{blue}{(-1)} (−1)。
原码 反码 补码关系3
3.关系操作符
> | 大于 |
---|---|
(>=) | 大于等于 |
< | 小于 |
<= | 小于等于 |
!= | 不等于 |
== | 等于 |
解释:在C语言中 == 为等于号。
在C语言中 = 为赋值号。
4.逻辑操作符
&& | 逻辑与 | 一假为假 |
---|---|---|
II | 逻辑或 | 一真为真 |
5.条件操作符(三目操作符)
e x p 1 ? e x p 2 : e x p 3 \color{red}{exp1?exp2:exp3} exp1?exp2:exp3
exp1成立,结果为exp2,否则为exp3。
#include<stdio.h>
int main()
{
int a=10,b=20,max=0;
if(a>b)?max=a:max=b;
return 0;
//解释代码
/*这里写的选择语句中,
如果a>b成立,max=a
则最大值就是a。
如果a>b不成立,max=b
则最大值就是b。
*/
}
6.逗号表达式
用逗号隔开的一串表达式。
从左向右依次计算,整个表达式的结果是最后一次表达式的结果。
#include<stdio.h>
int main()
{
int a = 0, b = 1, c = 2;
int z = (a=a + b,b= b + c,a=b+ c);
printf("%d",z );
return 0;
//结果为5
/*解释:a=a+b=1;
b=b+c=3;
a=b+c=3+2=5;
*/
}
7.下标引用操作符、函数调用、结构成员
[] () . ->
学的不仅是技术,更是梦想
- sizeof是关键字,用于求数组中的元素个数。 ↩︎
- 单目操作符只有一个操作数。 ↩︎
- 正整数的原码、反码、补码全都相同。
负整数:原码–>反码(符号位不变,其他位按位取反)。
反码–>补码(反码加1)。 ↩︎
还没有评论,来说两句吧...