我们来认识一个C语言运算符:sizeof()
sizeof():
每个数据类型所占的字节大小不同,例如char类型长度为1字节,short类型为2字节,int类型为四字节。所占字节越大及容量越大,那么我们来学习sizeof的基本用法:sizeof(变量)括号里抱着变量
#include<stdio.h>
int main()
{
int a = 1;
short b = 1;
char c = 1;
long long d = 1;
printf("int类型大小为:%d\n",sizeof(a));
printf("short类型大小为:%d\n",sizeof(b));
printf("char类型大小为:%d\n",sizeof(c));
printf("long long类型大小为:%d\n",sizeof(d));
return 0;
}
算术运算:+ - * /
算数运算符就是用来算数的例如:
#include<stdio.h>
int main()
{
int a = 2, b = 4, c;
c = a + b;
printf("a+b=%d\n",c);
c = a * b;
printf("a*b=%d\n", c);
c = b / a;
printf("b/a=%d\n", c);
c = a - b;
printf("a-b=%d\n", c);
return 0;
}
自增与自减: ++ --
例如:--num; num++; 那么区别是什么?
++在前那么就先进行++自增运算,再参与其他运算;++在后那么就先进行运算,再进行自增运算。
#include<stdio.h>
int main()
{
int num1 = 2, num2 = 4, num3 = 6;
int a = (++num1) + (num2++) * (num3--);
//后++的都是在进行完乘除加减赋值后再自己单独++的也就是
//3+4*6=27 ++前都是先自己+1了才进行乘除加减赋值等运算
printf("a:%d\n", a);
printf("num1:%d\n", num1);
printf("num2:%d\n", num2);
printf("num3:%d\n", num3);
return 0;
}
变量互换:
变量互换就是两个或两个变量以上交换变量本身的值,例如int a = 2,b = 4;a和b交换之后a = 4,b = 2;交换了变量a和b的值,这就叫做变量互换也就是交换。
常见的有三种变量交换方式代码如下 含解析:
#include<stdio.h>
int main()
{
// 变量互换/交换方法1:
int x = 2, y = 4;//交换x和y的值
int temp = 0;//定义一个临时变量来存放
temp = x; // temp = x 存放x变量的值
x = y; // x = y
y = temp; // y = temp temp变量里存放了x的值所以temp的值为2
printf("交换后x=%dy=%d\n",x,y);
// 变量互换/交换方法2:
x = 2, y = 4;
x = x ^ y;
y = y ^ x;
x = x ^ y;
// ^是什么?^ 是异或运算 有一个真那么就为真 1代表真 0代表假 例:
/* x的值为2,y的值为4,那么2和4的4位二进制为:
x = 0 0 0 0 0 0 1 0
y = 0 0 0 0 0 1 0 0
结果给x = 0 0 0 0 0 1 1 0 转为十进制为 6 x = x ^ y;
x = 0 0 0 0 0 1 1 0
y = 0 0 0 0 0 1 0 0
结果给y = 0 0 0 0 0 0 1 0 转为十进制为 2 y = x ^ y;
x = 0 0 0 0 0 1 0 0
y = 0 0 0 0 0 0 1 0
结果给x = 0 0 0 0 0 1 1 0 转为十进制为 6 x = x ^ y;
*/
printf("交换后x=%dy=%d\n",x,y);
// 变量互换/交换方法3:
x = 2, y = 4;
x = x + y;
y = x - y;
x = x - y;
/* 方法3的解析:
步骤1. 将x+y的值赋值给x;(即x=x+y,x的值为6=2+4,x的值由2变为了6)
步骤2. 将x-y的值赋值给y;(即y=x-y,y的值为2=6-4,y的值由4变为了2)
步骤3. 将x-y的值赋值给x;(即x=x-y,x的值为4=6-2,x的值由6变为了4)
*/
printf("交换后x=%dy=%d\n",x,y);
return 0;
}
三目运算符:
常用方式:a>b?a:b 如果a大于b成立,则执行 : 左边的这个值a 如果不成立则执行右边这个值 b
使用语法如下:
#include<stdio.h>
int main()
{
int x = 0, y = 0;
printf("请输入两个数判断谁大\n");
scanf_s("%d %d", &x,&y);//加入x=1,y=2,那么结果为2大
printf("较大%d\n",(x > y ? x : y));//如果x大于y则执行x,否则执行y
return 0;
}
数据类型与运算符讲到这里,我下期将开启结构化程序设计课题讲解
若有不理解请深思,垫高枕头慢慢理解🤪
多敲多打多写
C语言-01认识C语言程序----第一部分(下)初学适用