顶部左侧内容
百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 在线教程 > 正文

运算符和表达式(运算符和表达式实验结果及分析)

gosiye 2024-08-29 16:29 7 浏览 0 评论

运算符和表达式

1 表达式

表达式分为简单表达式和复杂表达式
#include <stdio.h>
?
int main(void)
{
 int iNumber1,iNumber2,iNumber3;/*申明变量*/
?
 iNumber1 = 3;
 iNumber2 = 7;/*为变量赋初始值*/
?
 printf("the first number is %d\n",iNumber1);
 printf("the second number is %d\n",iNumber2);
?
 iNumber3 = iNumber1+10;
?
 printf("the first number add 10 is %d\n",iNumber3); /*打印iNumber3的值*/
?
 iNumber3 = iNumber1 +iNumber2;
 printf("the result number of the first add the second is:%d\n",iNumber3);
?
 return 0;
}

2.赋值运算符与赋值表达式

2.1 变量赋初值

 变量赋值为常数 类型 变量名 = 常数char cChar = 'A';
int iFirst =100;
float fPlace =1525.121;
 赋值表达式为变量赋初值 类型 变量名 = 表达式int iAmount =1+2;
float fPrice = fBase +Day*3;

2.2 自动类型转换

float i =10,1f;
int j =i;//提示会损失精度的报警

2.3 强制类型转换

(类型名)(表达式)

float i=10.1f;
int j = (int)i;/*进行强制类型转换*/
#include <stdio.h>
//强制类型转换
int main(void)
{
 char cChar;
 short int iShort;
 int iInt;
 float fFloat =70000;
 cChar =(char)fFloat;
 iShort = (short)fFloat;
 iInt =(int)fFloat;
 printf("the char is %c\n",cChar);
 printf("the long is %ld\n",iShort);
 printf("the int is %d\n",iInt);
 printf("the float is %f\n",fFloat);
?
 return 0;
}
?
/*
the char is p
the long is 4464
the int is 70000
the float is 70000.000000
Press any key to continue
?
?
*/

3.算术运算符与算术表达式

C语言中有两个单目运算符、5个双目运算符。

3.1 算术运算符

符号功能符号功能+单目正%取模-单目负+加法*乘法-减法/除法

3.2 算术表达式

在表达式中使用算术运算符,则将表达式称为算术表达式。
#include <stdio.h>
int main(void)
{
 int iCelsius,iFahrenheit;/*申明两个变量*/
 printf("Please enter temperature :\n");
 scanf("%d",&iFahrenheit);
 iCelsius = 5*(iFahrenheit-32)/9;
?
 printf("Temperature is:");
 printf("%d",iCelsius);
?
 printf(" degrees Celsius\n");
?
 return 0;
}

3.3 优先级和结合性

在表达式求值时,先按照运算符的优先级别高低次序指向,算术运算符中* / %的优先级别高于+-的级别。

3.4 自增/自减运算符

算术运算符的优先级相同时,结合放心为“自左向右”。
#include <stdio.h>
int main(void)
{
 int iNumber1,iNumber2,iNumber3,iResult=0;
 iNumber1 =20;
 iNumber2 =5;
 iNumber3 =2;
 iResult = iNumber1+iNumber2-iNumber3;//加法 减法
 printf("the result is %d\n",iResult);
 iResult = iNumber1-iNumber2-iNumber3;//减法 加法
 printf("the result is %d\n",iResult);
 iResult = iNumber1+iNumber2*iNumber3;//加法 乘法
 printf("the result is %d\n",iResult);
 iResult = iNumber1/iNumber2*iNumber3;//除法 乘法
 printf("the result is %d\n",iResult); 
}

4.关系运算符与关系表达式

在C语言中海油两个特殊的运算符,即自增运算符 “++”和自减运算符"--"。
--Counter; //前自减
Grade--;//后自减
++Age;//前自加
Height++;//后自加

4.1 关系运算符

符号功能符号功能>大于<=小于等于>=大于等于==等于<小于!=不等于

4.2 关系表达式

关系运算符用于对两个表达式的值进行比较,返回一个真值或者假值。返回的值是真还是假取决于表达式中的值和所用的运算符。

4.3 优先级与结合性

关系运算符的结合性都是自左向右的。使用关系运算符时常常会判断两个表达式的关系。
#include <stdio.h>
int main(void)
{
 int iChinese,iEnglish;
 printf("Enter Chinese score: ");
 scanf("%d",&iChinese);
 printf("Enter English score: ");
 scanf("%d",&iEnglish);
 
 if(iChinese>iEnglish)
 {
 printf("Chinese is better than English\n");
 }
 if(iChinese<iEnglish)
 {
 printf("English is better than Chinese\n"); 
 }
 if(iChinese == iEnglish)
 {
 printf("Chinese equal English\n");
 
 }
 
 return 0;
}

5.逻辑运算符与逻辑表达式

逻辑运算符

符号功能&&逻辑与||逻辑或!单目逻辑非

"&&"和 "||"是双目运算符,他们要求有两个操作数,结合方向至左向右。"!"是单目运算符,要求有一个操作数。
#include <stdio.h>
int main(void)
{
 int iNumber1,iNumber2;
 iNumber1=0;
 iNumber2=0;
 printf("the 1 is true,0 is false!\n");
 printf("5< iNumber1&& iNumber2 is %d\n",5<iNumber1&&iNumber2);
 printf("5< iNumber1||iNumber2 is %d\n",5<iNumber1||iNumber2);
 iNumber2=!iNumber1;
 printf("iNumber2 is %d\n",iNumber2);
 return 0;
}

6.位逻辑运算符与位逻辑表达式

位逻辑运算符包括位逻辑与、位逻辑或、位逻辑非、取补。

符号功能&位逻辑与|位逻辑或^位逻辑非~取补

7.逗号运算符与逗号表达式

在C预言中,可以用逗号将多个表达式分隔开来。其中,用逗号分隔的表达式被分别计算,并且整个表达式的值是最后一个表达式的值。
#include <stdio.h>
int main(void)
{
 int iValue1,iValue2,iValue3,iResult;
 iValue1=10;
 iValue2=54;
 iValue3=26;
 iResult=0;
 iResult = iValue1++,--iValue2,iValue3+4;
 printf("the result is %d\n",iResult);//结果是10
 iResult = (iValue1++,--iValue2,iValue3+4);
 printf("the result is %d\n",iResult);//结果是30
 return 0;
}

8.复合赋值运算符

复合赋值是C语言中独有的,实际这种操作是一种缩写形式。

例如

  • 为了简化程序
  • 为了提高编译效率
value+=3;//value=value+3;
value-=3;//value=value-3;
value*=3;//value=value*3;
value/=3;//value=value/3;
#include <stdio.h>
int main(void)
{
 
 int iTotal,iValue,iDetail;
 iTotal=100;
 iValue=50;
 iDetail=5;
 iValue*=iDetail;
 iTotal+=iValue;
 printf("iValue = %d iTotal = %d\n",iValue,iTotal);
 return 0;
 
}

相关推荐

全球最大的H5网站模板库(h5页面模板下载)

当今社会,互联网迅猛发展,在网络营销中,客户往往通过企业的网站建设留下对该企业的第一印象,一个优秀的企业网站已成为企业发展的重要纽带,嗨创H5,拥有国内外一流的技术团队,潜心专研网站建设6年,是全球最...

wordpress集团公司网站模板:XSgr(wordpress建站公司)

小兽wordpress推出一款高端集团公司主题,打造高品质官网。高端是一种态度和坚持,因为我坚信贴合产品及品牌理念的高端深度定制才能最大化地呈现企业的务实严谨与产品的专业品质相比,某种程度上讲–...

私心推荐,小编酷爱的五款高逼格网站模板

建站宝盒的网站模板上千套之多,各有各的风格色彩,但是,弱水三千,小编我却只取一瓢饮,在这上千套模板之中,小编酷爱的网站模板有五套,让小编私心推荐一下吧!1、茶叶贸易公司网站模板小编对这款网站模板可是一...

「书讯」政府网站用户行为研究与应用

《政府网站用户行为研究与应用》作者:刘合翔著出版日期:2018年6月开本:16开出版社:经济管理出版社小编推荐《政府网站用户行为研究与应用》的主题是关于政府网站用户行为的特征规律及其在政府网站优...

免费服务器-搭建模板网站的操作流程(图文版)

之前发文《创业者的官网:如何搭建免费云服务器及操作面板(图文版)》,因为做了视频才发现,创业者对视频的需求,远远低于对图文解说的需求。因此,补充图文教程,不清楚的看官们,可以直接看视频版本进行细部学...

快收藏这些高逼格H5网站模板吧,不绕弯子直接下载

上面这些响应式H5网站是不是很炫酷,比起那些“在线一键生成”是不是好太多了?关键是,那些一键制作都不会开放源码给你,自定义性也很局限。不过说到底还是难看。今天笔者推荐大家一个模板网站,全都是高质量的响...

如何开发网站建设管理系统模板(如何开发网站建设管理系统模板图片)

根据用户网站需求文档设计美工图,并设计数据库结构,让网站开发人员可以更多地关注前台美工,先对照美工图,编写静态HTML页面,按网站建设管理系统模板语法,修改编写好的静态HTML页面,运行。不再需要对...

C语言的数据类型介绍(c语言的数据类型介绍是什么)

在计算机系统中,数据是放在内存中的,数字、文字、符号、图形、音频、视频等数据都是以二进制形式存储在内存中的,它们并没有本质上的区别,那么0001000该理解为数字8呢,还是图像中某个像素的颜色...

C 语言格式化输出函数中常用的格式符号

在之前介绍输入输出函数的文章中,有提到格式化输入输出函数都有包含一种特殊的符号——格式符号。那篇文章中关于格式符号也只是一笔带过,没有进行深入挖掘。本篇文章主要对输出函数(printf)中的一些常用格...

C#中的类型转换(c#数据转换类)

计算机存储的基本单位:字节我们知道一个字节(Byte)有8个比特(bit)构成,比特是存储的最小单位,表示0和1,但为什么计算机存储的基本单位是字节,而不是比特呢?假设我们要存储数字3(二进制:11...

Java8中String内存空间占用分析(电脑里下载的文件怎样删除才不会占用内存空间)

1.前言分析之前,简单回顾一下对象的内存分布。在HotSpot虚拟机中,对象在堆内存中的存储布局可以划分为三部分:对象头、实例数据和对齐填充。对象头包含两部分内容:MarkWord和类型指针。实例数据...

「每日C语言」数据类型大小和取值范围

对于c语言来说,数据类型是一个很重要的概念和知识点,它涉及到的是内存的空间,这在和硬件交互的时候是非常重要的。K&R给出了7个数据类型相关的关键字,分别是:int、long、short、uns...

【c语言学习笔记】数据类型(c语言里面的数据类型)

c语言学习笔记,欢迎大家能在评论区提出我学习错误的地方方便我进行改正~在计算机中,计算机用二进制来储存数据,在c语言中有许多的数据类型用来存储数据,当然不同的数据类型所用的内存占用也不一样,下面就来用...

关于MySQL varchar类型最大值,原来一直都理解错了

我是架构精进之路,点击上方“关注”,坚持每天为你分享技术干货,私信我回复“01”,送你一份程序员成长进阶大礼包。写在前面关于MySQLvarchar字段类型的最大值计算,也许我们一直都理解错误了,...

C语言数据类型的转换(c语言数据类型的转换方式)

类型转换在C语言程序中,经常需要对不同类型的数据进行运算,为了解决数据类型不一致的问题,需要对数据的类型进行转换。例如一个浮点数和一个整数相加,必须先将两个数转换成同一类型。C语言程序中的类型...

取消回复欢迎 发表评论: