一·赋值语句
在C++语言中,“=”作为赋值运算符,而不表示“等于”判断。赋值语句是由赋值表达式再加上分号构成的表达式语句,它是程序中使用最多的语句之一。
- 变量=表达式;
在赋值语句的使用中,需要注意以下几点:
1)由于赋值运算符“=”右边的表达式也可以是赋值表达式,因此,下述形式 :
变量=(变量=表达式);
是成立的,从而形成嵌套的情形。其展开之后的一般形式为:
变量=变量=…=表达式;
例如,“a=b=c=d=e=5;”,它实际上等价于:e=5;d=e;c=d;b=c;a=b;
2)在进行赋值运算时,如果赋值运算符两边的数据类型不同,系统将会自动进行类型转换,即将赋值运算符右边的数 据类型转换成左边的变量类型。当左边是整型而右边是实型时,将去掉小数部分并截取该整型对应的有效位数。
3)说明:
结合方向:自右向左
左侧必须是变量,不能是常量或表达式
例· 数学中经典的“鸡兔同笼”问题,已知头共30个,脚共90只,问笼中的鸡和兔各有多少只?
【分析】 设鸡为j只,兔为t只,头为h,脚为f,那么有:
j+t=30 ①
2j+4t=90 ②
假设笼中30 个头全都是兔,那么都按每头4只脚计算,总脚数为(4h),与实际脚数(f )之差为(4h-f),如果这个差=0,则笼中全是兔(即鸡为0只);如果这个差值 >0,说明多计算了脚数,凡是鸡都多计算了两只脚,用它除以2就能得到鸡的只数,算法为:① j=(4*h - f)/2 //先用脚数差值除以2算出鸡的只数
② t=h - j //再用总头数减鸡数算出免的只数
注意这两步运算的先后顺序。程序如下:
#include<cstdio> //使用getchar()语句, 须调用cstdio库
#include<iostream> //使用cin,