c语言常用操作符(1)

1.算数操作符

在c语言中如% / * + -等都是算数操作符,并且这些操作符都是双目操作符
(注:双目操作符是包含两个操作数的,位于操作数两边)

(1) +和-
+和-操作符是用来分别执行加法和减法运算的 以下代码是这两个操作符使用一个举例

#include <stdio.h>
int main()
{
 printf("%d\n",7+4);
 printf("%d|n",7-4);
 return 0;
}

输出结果为11, 3 

(2)*
*操作符是用来执行乘法运算的 以下代码是这两个操作符使用一个举例

#include <stdio.h>
int main()
{
  int a=10;
  int b=5;
  float c=6.6;
  float d=2.2;
  int d1=a*b;
  float d2=c*d
 printf("%d %f",d1,d2)
}

d1 d2输出依次为50 ,14.520000 


(3)%和/
%和/操作符是用来分别用来执行除法和求模运算的 
在含%的表达式中计算结果是两个整数的余数,注意该操作符只能用于整数不能用于浮点数的计算
同时求模时结果的正负号由第一个操作数的正负号决定

include<stdio.h>
int main()
{printf("%d\n",6%4);
printf("%d\n"-6%4);
printf("%d\n"6%-4);
printf("%d\n"-6%-4);
return 0;
}

在该代码中输出依次是2, -2 ,2, -2
在含/的表达式中若操作数都为整数执行的是整数除法,结果若行含小数也只取整数部分  若操作符中一个及以上为浮点数则计算结果为浮点数

#include <stdio.h>
int main()
{ printf("%d",6/4);
  printf("%f",6.0/4);
retrun 0;
}

输出结果为2, 2.5

2.赋值操作符

在变量创建的时候给一个值叫做变量初始化 之后再给值就是赋值 

#include <stdio.h>
int main()
{
 int a=1;//初始化
 a=4;//赋值


retrun 0;
}


在赋值过程中是可连续的,称为连续赋值 还存在复合赋值,对一个数进行改变

#include <stdio.h>
int main()
{
 int a=1;
 int b=3;
 int c=6;
   c=a;
  b=a+9;//连续赋值
 a-=1;
 a+=7;//复合赋值

retrun 0;
}

常用的复合赋值符有+= ,-=, >=,<=, !=,>>=,<<=

3.单目操作符

在表达式中只含有一个操作数的操作符是单目操作符

1.前置++与后置++
前置++在运算过程中遵循先++后使用 而后置++遵循先使用后++
2.前置--与后置--
前置--在运算过程中遵循先--后使用 而后置--遵循先使用后-- 
 

#include <stdio.h>
int main()
{
	int a, b, c;
	a = 5;//a赋值为5
	c = ++a;// a=a+1=6 c=a=6
	b = ++c, c++, ++a, a++;//b=7 c=8 a=8
	b += a++ + c;//b=b+a++ +c=23 a=a+1=9 c=8
	printf("a = %d b = %d c = %d\n:", a, b, c);
	return 0;
}

输出a=9 b=23 c=8 

3.+与- 

这里+为正号,-为负号也都是单目操作符

4.关系操作符

在c语言中用于关系表达式中的运算符就被称为关系操作符
主要有<  >  >=  <=  ==  !=
注意事项 

1.在这之中==与=的使用容易使用错误,切记需要判断时用==初始化赋值=
如果在代码中=与==使用错误代码会不按正常逻辑运行 
2.在关系操作符使用时不可连用 例如:100<=i<=200这种就是错误的,如果在if语句中无论输入什么值都能进入if语句 正确的应该是100<=i && i<=200 这里面的&&是逻辑与 在下面的逻辑操作符中会讲解

5.条件操作符

条件操作符也叫3目操作符,含有3个操作数 形式如下
exp1 ?exp2 : exp3
当exp1为时exp2计算 若为exp3计算
可用于简化优化代码

#include <stdio.h>
int a =0;
int b =0;
int c =0;
int main()
{  scanf("%d %d %d",a,b,c);
   if(a>b)
{
  printf("%d",a);
}
   if(a<b)
{
  printf("%d",c);
}

return 0;
}

优化后

#include <stdio.h>
int a =0;
int b =0;
int c =0;
int main()
{  scanf("%d %d %d",a,b,c);
  int i= a>b ? a :c
  printf("%d",m);
return 0;
}

6.逻辑操作符

主要有下面3个操作符
1. ! :逻辑取反运算符(改变单个表达式的真假)。

include <stdio.h>
int main()
{
int flag = 0;
if(!flag)
    {  
      printf("hehe");
    }
return 0;
}

 如中flag为真 如果要在flag为假时输出hehe可以用以上代码表达
2.&& :逻辑与运算符,就是并且的意思(两侧的表达式都为真,则为真,否则为假)。

#include <stdio.h>
int main()
{
  int i =0;
  for(i=100;i>=100 && i<=200;i++)//i初始化值为100 判断部分使大于100且小于200的可进入循环
 {
   printf("%d",i);//打印i

 } 
 return 0;

}


3. || :逻辑或运算符,就是或者的意思(两侧⾄少有⼀个表达式为真,则为真,否则为假)

#include <stdio.h>
int main()
{
  int i =0;
  for(i=100;i<=100 && i>=200;i++)//i初始化值为100 判断部分使小于100或者大于200的可进入循环
 {
   printf("%d",i);//打印i

 } 
 return 0;

}

 在逻辑与和逻辑或操作符中还存在短路现象 以下以一段代码说明

include <stdio.h>

int main()
{
    int i = 0, a = 0, b = 2, c = 3, d = 4;
    i = (a++ && ++b && d++);//a++=0 &&表达式第一部分为假剩下部分不执行 

    printf("i = %d a = %d\n b = %d\n c = %d\nd = %d\n", i, a, b, c, d);
//i=0  a=a+1=1 b=2 c=3 d=4
    return 0;
}
include <stdio.h>

int main()
{
    int i = 0, a = 0, b = 2, c = 3, d = 4;
    
    i = a++||++b||d++;//a++=0 ||表达式的第一部分为假 继续执行之后的部分 ++b=3为真停止

    printf("i = %d a = %d\n b = %d\n c = %d\nd = %d\n", i, a, b, c, d);
//i=1 a=1 b=3 c=3 d=4
    return 0;
}


 



 


 

  • 22
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mljy.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值