c语言学习之基础知识点介绍(四):算术运算符和逗号表达式
本节主要介绍c语言中运算符。
运算符主要分为四类:
1、算术运算符
加(+),减(-),乘(*),除(/),取余(%,两数相除,得到余数)
2、关系运算符
3、逻辑运算符
4、换位运算符
下面将依次介绍运算符。
1、算术运算符:
//加(+):让两个操作数相加得到它们的和。
//例如:
int num = ;
int num1 = ;
//int sum = num+num1;printf("num+num1=%d \n",sum );
printf("num+num1=%d \n",num+num1);
//减(-):让两个操作数相减得到它们的差。
//例如:
int num = ;
int num1 = ;
//int poor = num-num1;printf("num-num1=%d \n",poor );
printf("num-num1=%d \n",num-num1);
//乘(*):让两个操作数相乘得到它们的积。
//例如:
int num = ;
int num1 = ;
//int product = num*num1;printf("num*num1=%d \n",product );
printf("num*num1=%d \n",num*num1);
//除(/):让两个操作数相除得到它们的商。
//注意:除号(/)两边的数字如果都是整数的时候,相除所得的结果一定是整数。当有任意一个数字为浮点数的时候,结果也一定是浮点数,运算结果是double还是float是根据浮
//点数据类型来确定的;如果0作除数的表达式两边都是常量,运行时不会报错,其运算结果是垃圾值;若0作除数,两边任意一方为变量,运行时会报错。
//例如:
int num = ;
int num1 = ;
//int quotients = num/num1;printf("num/num1=%d \n",quotients );
printf("num/num1=%d \n",num*num1);
//取余(%):让两个操作数相除得到它们的余数。浮点数不能取余。
//注意:取余结果的的正负性,取决于左边操作数的正负性。
//例如:
int num = ;
int num1 = ;
//int remains= num/num1;printf("num/num1=%d \n",remains);
printf("num%num1=%d \n",num%num1);
//预算法则:先乘除,后加减,有括号的先算括号里面的,如果同级,就从左到右一次运算。
//加等(+=):在原值的基础上进行加一个值的操作。例如:
int num = ;
num+=;
printf("num=%d \n",num);
//减等(-=):在原值的基础上进行减一个值的操作。例如:
int num = ;
num -= ;
printf("num=%d \n",num);
//乘等(*=):在原值的基础上进行乘一个值的操作。例如:
int num = ;
num *= ;
printf("num=%d \n",num);
//除等(/=):在原值的基础上进行除一个值的操作。
//注意:除号(/)两边的数字如果都是整数的时候,相除所得的结果一定是整数。当有任意一个数字为浮点数的时候,结果也一定是浮点数,运算结果是double还是float是根据浮
//点数据类型来确定的;如果0作除数的表达式两边都是常量,运行时不会报错,其运算结果是垃圾值;若0作除数,两边任意一方为变量,运行时会报错。
//例如:
int num = ;
num /= ;
printf("num=%d \n",num);
//余等(%=):在原值的基础上进行余一个值的操作。浮点数不能进行取余操作。
//注意:取余结果的的正负性,取决于左边操作数的正负性。
//例如:
int num = ;
num %= ;
printf("num=%d \n",num);
//自增(++):在原来基础上+1。例如:
int num = ;
num++;
printf("num=%d",num);
//注意:当printf("num=%d",num++);这种写法时,程序会先打印之后才会执行++;当printf("num=%d",++num);这种写法时,程序会先执行++之后才会打印 //自减(--):在原来基础上-1。例如:
int num = ;
num--;
printf("num=%d",num);
//注意:当printf("num=%d",num--);这种写法时,程序会先打印之后才会执行--;当printf("num=%d",--num);这种写法时,程序会先执行--之后才会打印 //前缀++/--和后缀++/--的区别:
//前缀:先自增/自减之后在参与运算
//后缀:先拿自身的值参与运算,后自增/自减
//不管如何,都会执行++/--;
扩展一个逗号表达式:
//逗号运算符:英文的逗号 ,
//逗号运算式:(表达式1,表达式2,.......表达式n);
//执行方式:会从表达式1执行到表达式n,但是只会取最后一个表达式的值为最终结果。
//例如:
int num1= ;
int num2 =;
int sum = (,,,,,num1+num2,num1*num2);
printf("sum = %d \n" ,sum)//最终输出 2
c语言学习之基础知识点介绍(四):算术运算符和逗号表达式的更多相关文章
- c语言学习之基础知识点介绍(三):scanf函数
本节继续介绍c语言的基础知识点. scanf函数:用来接收用户输入的数据. 语法:scanf("格式化控制符",地址列表); 取地址要用到取地址符:&(shift+7) 例 ...
- c语言学习之基础知识点介绍(二):格式化控制符和变量的补充
上节简单介绍了c语言中的一些基础知识点,本节将对之前介绍的不够详细的知识点进行补充. 格式化控制符的消息介绍: %d的其他控制符: 1.%md:m代表这个整数位占用多少位,m是一个整数.实际数字不足的 ...
- c语言学习之基础知识点介绍(五):关系运算式和逻辑运算式
本节主要说关系运算式和逻辑运算式. 一.关系运算式 1.等于(==):判断左边的表达式是否等于右边的表达式 2.大于(>):判断左边的表达式是否大于右边的表达式 3.大于等于(>=):判断 ...
- oc语言学习之基础知识点介绍(四):方法的重写、多态以及self、super的介绍
一.方法重写 /* 重写:当子类继承了父类的方法时,如果觉得父类的方法不适合,那么可以对这个方法进行重新实现,那么这个就重写. 注意:也就是说,一定只能发生在父类和子类关系中. 然后是子类重新实现父类 ...
- c语言学习之基础知识点介绍(十四):指针的进阶
一.指针的加.减法运算 /* 1.加法运算 1).可以跟整数进行加法运算,得到的还是一个地址 公式: 地址 + 1 = 地址 + 1 * 类型所占的字节数 地址 + n = 地址 + n * 类型所占 ...
- oc语言学习之基础知识点介绍(五):OC进阶
一.点语法介绍 /* 以前封装后,要给属性赋值,必须调用方法 这样做,有两个缺点: 1.代码量多,调用方法要写的东西多. 2.看起来并不像是给属性赋值,也不像取值. 我们用点语法就可以更好的解决! 点 ...
- oc语言学习之基础知识点介绍(二):类和对象的进一步介绍
一.类.对象在内存中的存储 /* 内存分区: 栈:局部变量 堆:程序员自己写代码申请开辟的 程序员自己维护,编译器现在帮我们自动优化了,它在合适的给我们加上了释放空间的语句,所以我们现在写的对象不会造 ...
- c语言学习之基础知识点介绍(十一):字符串的介绍、使用
本节主要介绍c语言中的字符串的应用. 一:字符串介绍 因为c语言中没有像Java.C#那样的字符串类型,所以无法直接用字符串.需要借助数组来解决这个问题. /* 定义:把多个字符连在一起就叫字符串.但 ...
- c语言学习之基础知识点介绍(七):循环结构
本节主要介绍循环结构 一.while循环 /* 语法: while(表达式){ //循环体; } 注意:循环变量.循环条件和循环控制语句三者缺一不可. 例如: */ ; //循环变量 ){ //循环条 ...
随机推荐
- POJ_2503_Babelfish_(Trie/map)
描述 http://poj.org/problem?id=2503 给出一个字典,求翻译,翻译不了输出eh. Babelfish Time Limit: 3000MS Memory Limit: ...
- 20140708郑州培训第二题Impossible Game
Impossible Game题目描述你发明了一个简单的单人电脑游戏.在开始游戏时,玩家必须输入一个长度为 K 的字符串,且这个字符串的元素只能为‘A’‘B’‘C’或者‘D’.每一种字符串都代表一种颜 ...
- PHP手册 – 变量和常量
变量 php中变量的定义,就是就在某一个单词前面加上"\(".这是php的特色,**我想到的一个好处就是和常量做区分.另外,linux的shell编程中,\)有取值的意思.**.赋 ...
- java基于xml配置的通用excel单表数据导入组件(一、实际应用过程)
主要应用技术:poi + betwixt + reflect 一.实际应用过程 1.创建与目标表结构一样,表名为‘{目标表名}_import’的临时表: 2.创建用于存储导入问题数据的表:t_impo ...
- android报错——java.lang.ClassNotFoundException[android]
E/AndroidRuntime(1875): Caused by: java.lang.ClassNotFoundException:XXXXX in loader dalvik.system ...
- JDBC_demo:java连接mysql过程
1.任何数据库驱动程序都提供对java.sql.Driver接口的驱动类,mysql-connector-java-5.1.39-bin.jar中Driver: package com.mysql.j ...
- 【ACM/ICPC2013】二分图匹配专题
前言:居然三天没有更新了..我的效率实在太低,每天都用各种各样的理由拖延,太差了!昨天的contest依旧不能让人满意,解出的三题都是队友A的,我又卖了一次萌..好吧废话不多说,今天我要纪录的是二分图 ...
- 普通用户从非80端口启动tomcat,通过端口转发监听80端口
linux下小于1024的端口都需要root去绑定. root权限启动tomcat是不明智的,可以使用非root权限启动tomcat监听8080端口,然后利用端口转发实现对80端口的监听. 端口转发: ...
- Gof-23种设计模式名称列表
工欲善其事,必先利其器. 在真正使用设计模式之前,必须知道各个设计模式对应的场景.设计模式是针对某种固定的场景下产生的固定解决方案.只有明确的场景,才会有明确的设计方式和方法. 设计模式全集: Abs ...
- MVC母版面,子页的脚本生成在最后