使用表达式、语句和运算符

6 篇文章 0 订阅
2 篇文章 0 订阅

使用表达式、语句和运算符

1.语句

所有的c++都由语句组成,语句是以分号结尾的命令。语句控制程序的执行流程、评估表达式甚至可以什么也不做(空语句)。

空白:

在c++程序源代码中,空格、制表符和换行符统称为空白。空白旨在让程序员方便阅读代码,编译器通常忽略他们。

正确的缩进有助于识别程序块或函数块的开始和结束位置。

复合语句:

可将多条语句编组,构成一条复合语句,这种语句以{开头,以}结束。可将复合语句放在任何可使用单条语句的地方。

复合语句中的每条语句都必须以分号结尾,但复合语句本身不能以分号结尾。如:

{

temp=a;

a=b;

b=temp;

}

这条复合语句交换a与b的值,交换时使用变量临时存储了一个变量的值。

2.表达式

表达式是语句中任何返回一个值的部分。如:

z = x = y + 13;

这条语句包含三个表达式:

表达式 y + 13,值被存储在变量x中;

表达式x = y + 13,它返回变量x的值,而该返回值被存储在变量z中;

表达式z = x = y + 13,它返回z的值,但是该返回值并未存储到其他变量中。

赋值运算符=导致左操作数的值变为右操作数的值

操作数是一个数学术语,指的是被运算符操作的表达式。

程序清单4.1 Expression.cpp

#includeintmain()

{

intx=12,y=42,z=88;

std::cout<<"Before -- x: "<

std::cout<<" z: "<

z=x=y+13;

std::cout<<"After -- x: "<

std::cout<<" z: "<

return0;

}

3.运算符

运算符是导致编译器执行操作的符号。

赋值运算符:=(常量可以作为右值,但不能作为左值,比如95 = grade非法)

数学运算符:+、-、*、/、%(%为求模运算符,返回整数除法的余数)

组合运算符:+=、-=、*=、/=、%=(都是自赋值运算符)

关系运算符:==、!=、>、>=、<、<=

逻辑运算符:&&、||、!

位运算符:&、|、^、~、<<、>>

递增与递减运算符:++、–

前缀运算符与后缀运算符:递增运算符++与递减运算符–若放在变量前面,就称为前缀运算符,放在变量后面则称为后缀运算符。

如:++count;中的++为前缀运算符,count++;中的++为后缀运算符

区别在于进行赋值时,前缀运算符会在赋值前执行,而后缀运算符会在赋值后执行

intx=5;

intsum=++x;

这两条语句使得x为6;sum为6;

intx=5;

intsum=x++;

这两条语句导致sum为5,x为6。

程序清单4.2 Years.cpp

#includeintmain()

{

intyear=2016;

std::cout<<"The year "<<++year<<" passes.\n";

std::cout<<"The year "<<++year<<" passes.\n";

std::cout<<"The year "<<++year<<" passes.\n";

​

std::cout<<"\nIt is now"<

std::cout<<" Have the Chicago Cubs won the World Series yet?\n";

std::cout<<"\nThe year "<

std::cout<<"The year "<

std::cout<<"The year "<

​

std::cout<<"\nSurely the Cubs have won the Series by now.\n";

return0;

}

运算符优先级:表就不打了,自己去查,貌似版本挺多。

4.if-else条件语句

程序清单4.3 Grader.cpp

#includeintmain()

{

intgrade;

std::cout<<"Enter a grade (1-100): ";

std::cin>>grade;if (grade>=70)

std::cout<<"\nYou passed. Hooray!\n";

else

std::cout<<"\nYou failed. sigh.\n";

return0;

}

程序清单4.4 NewGrader.cpp

#includeintmain()

{

intgrade;

std::cout<<"Enter a grade (1-100): ";

std::cin>>grade;if (grade>=70)

{

if (grade>=90)

{

std::cout<<"\nYou got an A. Great job!\n";

return0;

}

if (grade>=80)

{

std::cout<<"\nYou got a B. Good work!\n";

return0;

}

std::cout<<"\nYou got a C.\n";

}

elseif (grade>=60)

{

std::cout<<"\nYou got a D.\n";

}

else

std::cout<<"\nYou got an F. Congratulations!\n";

}

原文链接:https://www.cnblogs.com/adapter-chen/p/13293616.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值