C语言运算符深入探究优先级与结合性及种类

目录
  • 1、常用运算符分类
  • 2、算术运算符
  • 3、赋值运算符
  • 4、比较运算符
  • 5、逻辑运算符
  • 6、运算符优先级
  • 7、运算关系转换

1、常用运算符分类

2、算术运算符

代码:

#include <stdio.h>
#include <math.h>
int main(void)
{
	int a = 10; // 确定 a的值。
	int b = 20; // 确定 b的值。
	int C,D,E,F,G,H,I,J,K,L,M; //定义 C,D,E,F,G,H,I.
	C=a+b;  //相加
	D=b-a;   //相减
	E=a*b;   //相乘
	F=a/b;   //相除
	G=a%b;    //取余
	//J=a++;   //前自增
	K=++a;   //后自增
	//L=b--;   //前自减
	M=--b;   //后自减
	H=pow(a,2);  //平方
	I=a*(a+b);
	printf("C=%d\nD=%d\nE=%d\nF=%d\nG=%d\nH=%d\nI=%d\nK=%d\nM=%d\n",C,D,E,F,G,H,I,K,M);
}

解释:

1、c语言相加减的表达方式和数学一样都是用“+” “-”;

2、C语言的乘法和除用“ * ”,“ / ”。

3、% 这个符号的意思是取余数。

4、当我们想求a的平方的时候我们不能直接a^2,这样的用法是错误的。

在开始我们先导入一个数学库:#include <math.h>

接着在使用pow函数:H=pow(a,2); 这就是a的平方使用方法。

5、++a,相当于10+1,而a++相当于9+1,a–和–a,同理。

结果:

3、赋值运算符

代码:

#include <stdio.h>
int main (void)
{
	int a=10;
	int b=20;
	int c=30;
	int d=40;
	int e=33;
	int A,B,C,D,E,F;
	A = b;     // a赋值给A,A=10;
	B = a+=2;  // a加2等于B,B=12;
	C = b-=3;  // b减3等于C, C=17;
	D = c*=2;  // c乘以2等于D, D=60;
	E = d/=2;  // d除以2等于E, E=20;
	F = e%=2;  // e除以2取余数等于F, F=1;
	printf("A = %d\nB = %d\nC = %d\nD = %d\nE = %d\nF = %d\n",A,B,C,D,E,F);
	return 0;
}

结果:

4、比较运算符

C 语言的比较运算中, “真”用数字“1”来表示, “假”用数字“0”来表示。

代码:

#include <stdio.h>
int main (void)
{
	int a=10;
	int b=20;
	printf("%d\n",a==b);  //相等于
	printf("%d\n",a!=b);  // 不等于
	printf("%d\n",a<b);  // 小于
	printf("%d\n",a>b);  //大于
	printf("%d\n",a<=b);  //小于等于
	printf("%d\n",a>=b);  //大于等于
	return 0;
}

结果:

5、逻辑运算符

代码:

#include <stdio.h>
int main (void)
{
	//0为假,1为真
	int a=0;
	int b=1;
	printf("%d%d\n",!a,!b); //非运算 ,假变真,真变假。
	printf("%d\n",a&&b);  // 与运算,a ,b 为真都为真,或者假。
	printf("%d\n",a||b);  // 或运算,a ,b有一个为真都为真,二者都为假才为假。
	return 0;
}

结果:

6、运算符优先级

7、运算关系转换

类型转换的原则:占用内存字节数少(值域小)的类型,向占用内存字节数多(值域大)的类型转换,以保证精度不降低。

到此这篇关于C语言运算符深入探究优先级与结合性及种类的文章就介绍到这了,更多相关C语言运算符内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 简单总结C语言中的运算符优先级

    C语言中有很多运算符,除了四则运算,还有位运算.比较运算.逻辑运算.赋值运算等等,令人眼花缭乱的同时,优先级也让人头疼.通常建议在写代码的时候不用省略括号,但是并不是所有程序员都会按照这个规矩来,因此还是有必要记录一下,以备查阅. 总结几个比较重要的原则: 取成员的"0"目运算符[() . -> []]优先级最高: 单目运算符高于双目运算符: 四则运算高于移位运算: 移位运算高于比较运算: 比较运算高于位运算,位运算高于逻辑运算: 逻辑运算高于赋值运算: 逗号永远最低.

  • C语言运算符的优先级和结合性实例详解

    运算符是告诉编译程序执行特定算术或逻辑操作的符号.C语言的运算范围很宽,把除了控制语句和输入输出以外的几乎所有的基本操作都作为运算符处理.主要分为三大类:算术运算符. 关系运算符与逻辑运算符.除此之外,还有一些用于完成特殊任务的运算符. 先来看一个例子: #include <stdio.h> int main(){ int a=10,b=1,c=2; a=b=c; printf( "12+3*5=%d\n", 12+3*5); printf( "a=%d, c=%

  • C语言运算符及其优先级汇总表口诀

    C语言运算符及其优先级汇总表口诀 圆下箭头一顿号非凡增减富强针地长三乘除,四加减,五移位千万别把鱼忘记,它在盛饭的厨子里小灯大灯灯灯不等爸喂鱼,舅疑惑,裸鸡也疑惑十三姨,十四父,十五逗,兜到低 "圆下箭头一顿号"指的是第15级的运算符.其中圆指的是运算符(),下指的是下标运算符[],箭头指的是指向结构体成员运算符->,顿号指的是结构体成员运算符. "非凡增减富强针地长"指的是第14级的运算符.其中非指的是逻辑运算符!,凡指的是按位取反运算符~,增减指的是自增和

  • C语言运算符优先级列表(超详细)

    每当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤!现在,终于有个我个人觉得非常全的,分享给大家,欢迎拍砖! C语言运算符优先级 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右 -- () 圆括号 (表达式)/函数名(形参表) -- . 成员选择(对象) 对象.成员名 -- -> 成员选择(指针) 对象指针->成员名 -- 2 - 负号运算符 -表达式 右到左 单目运算符 ~ 按位取反运算符 ~表达式 ++ 自增运算符 +

  • C语言运算符深入探究优先级与结合性及种类

    目录 1.常用运算符分类 2.算术运算符 3.赋值运算符 4.比较运算符 5.逻辑运算符 6.运算符优先级 7.运算关系转换 1.常用运算符分类 2.算术运算符 代码: #include <stdio.h> #include <math.h> int main(void) { int a = 10; // 确定 a的值. int b = 20; // 确定 b的值. int C,D,E,F,G,H,I,J,K,L,M; //定义 C,D,E,F,G,H,I. C=a+b; //相加

  • C语言运算符与表达式

    目录 表达式 函 数 概 述 赋值运算符与赋值表达式 变量赋初值 自动类型转换 强制类型转换 算数运算符与表达式 算术运算符 算术表达式 优先级与结合性 自增自减运算符 关系运算符与表达式 优先级与结合性 逻辑运算符与表达式 位逻辑运算符与表达式 位逻辑运算符 位逻辑表达式 逗号运算符与表达式 复合赋值运算符 表达式 函 数 概 述 表达式是C语言的主体.在C语言中,表达式由操作符和操作数组成.最简单的表达式可以只含有一个操作数.根据表达式含有的操作符的个数,可以把表达式分为简单表达式和复杂表达

  • C语言中的运算符优先级和结合性一览表

    目录 运算符优先级和结合性一览表 上表中可以总结出如下规律 总结 所谓优先级就是当一个表达式中有多个运算符时,先计算谁,后计算谁. 运算符的优先级从高到低大致是:单目运算符.算术运算符.关系运算符.逻辑运算符.条件运算符.赋值运算符()和逗号运算符 简单记就是: ! > 算术运算符 > 关系运算符 > && > || > 赋值运算符. 此外运算符还有“目”和“结合性”的概念,这个很简单.“目”就是“眼睛”的意思,一个运算符需要几个数就叫“几目”.比如加法运算符

  • C语言 运算符详细介绍及示例代码

    C 运算符 运算符是一种告诉编译器执行特定的数学或逻辑操作的符号.C 语言内置了丰富的运算符,并提供了以下类型的运算符: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 杂项运算符 本章将逐一介绍算术运算符.关系运算符.逻辑运算符.位运算符.赋值运算符和其他运算符. 算术运算符 下表显示了 C 语言支持的所有算术运算符.假设变量 A 的值为 10,变量 B 的值为 20,则: 运算符 描述 实例 + 把两个操作数相加 A + B 将得到 30 - 从第一个操作数中减去第二个操作数 A

  • C语言中的操作符优先级的详细介绍

    C语言中的操作符优先级的详细介绍 C语言中操作符的优先级大全, 当然c++, Objective-C,大部分语言都试用. 下面是来自The C Programming Language 2th的总结. OperatorsAssociativity(结合性) 1. () [] -> . 左->右 2. ! ~ ++ -- + - *(type)sizeof 右->左 3. * / % 左->右 4. + - 左->右 5. << >> 左->右 6

  • Ruby的运算符和语句优先级介绍

    Ruby 是一种表达能力很强的语言,这得意于它异常丰富的运算符和语法糖,虽然 Ruby 一直把最小惊讶原则作为它的哲学之一,但还是常常看到让人惊讶不已,难于理解的代码,这可能是因为对它运算符和语句优先级理解不透导致,今天就和大家聊一聊 Ruby 运算符和语句的优先级. 先看一句简单的代码,猜一猜它的输出是什么. 复制代码 代码如下: puts {}.class 很多人一定以为结果是 Hash,但实事上结果是空,不信可以在 irb 里试一试. 再看一段代码. 复制代码 代码如下: puts "5

  • R语言运算符知识点讲解

    运算符 运算符:包含一个或者两个参数的无括号的参数 符号 说明 + - * ^ %% 取模运算 %/% 整除运算 可以定义自己的二元运算符 `%myop%` = function(a, b){ 2*a + 2*b } > 1 %myop% 1 [1] 4 一些特殊的语言结构也是二元运算符 例如:赋值运算符<-,索引[],函数调用max(a, b) 运算顺序 运算符的优先级 (按优先级排序) 运算符 描述 ({ 函数调用和分组表达式 [ [[ 索引 :: ::: 访问命名空间中的变量 $ @ 成

随机推荐