1222——算数运算符、关系运算符、逻辑运算符、语句

运算符:
一、算术运算符:
+ - * /
% ——取余运算
取余运算的应用场景:
1.奇偶数的区分。
2.把数变化到某个范围之内。——彩票生成。
3.判断能否整除。——闰年、平年。
int a = 10, b = 3;
Console.WriteLine("10/3=" + (a / b));
Console.WriteLine("10%3=" + (a % b));

++(自增运算) --(自减运算)——它只能对变量进行运算。
int a = 5;
a++;
//7++; //错误。
Console.WriteLine(a);//a = 6;

1.前自增/前自减
先进行自增/自减运算,然后再进行其它运算。可以简单认为前自增/前自减的优先级是最高。
int a = 5,b;
b = ++a;
Console.WriteLine("a=" + a + ";b=" + b); //结果应当a=6,b=6

2.后自增/后自减
先进行其它运算,当其它运算都完成后,再进行自增/自减运算。可以简单认为是后自增/后自减优先级是最低的。
int a = 5,b;
b = a++;
Console.WriteLine("a=" + a + ";b=" + b);//结果应当是a=6,b=5

二、关系运算符:——用来判断式子成立与否
== != > >= < <=
注意:
双等号不要写成单等号

三、逻辑运算符:&&,||都双操作数,!单操作数
&& 与(并且)
int a = 5,b=6;
Console.WriteLine(a > b && a > 0); //false;
Console.WriteLine(a <b && a > 0);//true
|| 或(或者)
int a = 5,b=6;
Console.WriteLine((a > b) || (a > 0)); //true
Console.WriteLine((a > b) || (a < 0));//false
! 非 ——取反

优先级:
一般来说:
1.算术运算术的优先级要高关系运算符;关系运算符的优先级要高于逻辑运算符
2.逻辑非优先级最高。逻辑与要高于逻辑或。
3.如果在不确定,就加小括号。

四、其它运算符:
1.赋值运算符:=。把右边的结果送到左边去。左边只能是变量。
2.复合运算符:+= -= *= /= %= 知道就行。
a+=5; <==> a = a + 5
3.条件运算符:三目运算符?:。
int a=5,b=6,c;
c = a > b ? a : b;
Console.WriteLine( c )//6

作业:
1.游泳池 一游泳场地,呈圆形,泳池半径a,广场半径b(a<b),

①求泳池护栏长度②求广场砖面积③护栏造价25元/米,广场砖85元/m^2,求护栏、广场砖共花费多 少?

Console.Write("请输入泳池半径a:");
string a = Console.ReadLine();
Console.Write("请输入广场半径b:");
string b = Console.ReadLine();
const double PI = 3.1415926;
double L = 2 * PI * Convert.ToDouble(a);
double S1 = PI * Convert.ToDouble(b)* Convert.ToDouble(b)- PI * Convert.ToDouble(a) * Convert.ToDouble(a);
double RMB = 25 * L + 85 * S1;
Console.WriteLine("泳池护栏长度L:"+L+"m");
Console.WriteLine("广场砖面积S1:" + S1 + "m^2");
Console.WriteLine("护栏、广场砖共花费YMB:"+RMB+"元");

2.老狼老狼几点了

Console.Write("老狼老狼几点了?");
string hour = Console.ReadLine();
int h, h1;
string ap;
h = Convert.ToInt32(hour);
h1 = h > 12 ? h - 12 : h;
ap = h > 12 ? "下午" : "上午";
Console.WriteLine("现在是" + ap + h1 + "点!");

3.输入三个数a,b,c。输出最大的。

int a, b, c, d, max;
Console.WriteLine("请输入三个数");
string a1 = Console.ReadLine();
string b1 = Console.ReadLine();
string c1 = Console.ReadLine();
a = Convert.ToInt32(a1);
b = Convert.ToInt32(b1);
c = Convert.ToInt32(c1);
d = a > b ? a : b;
max = d > c ? d : c;
Console.WriteLine("最大值是" + max);

二、语句:
顺序,分支,循环。

(一)顺序:略
分支:判断--表达式。if(){}
四大类:
1.if
if (age > 18)
{
Console.WriteLine("可以去当兵!");
}

注意:if表达式后面只管一句话,可以省略掉{};如果if表达式后面需要管多句话,则必须加{}

2.if...else...
if (age > 18)
{
Console.WriteLine("成年了!");
Console.WriteLine("可以去当兵!");
}
else
{
Console.WriteLine("还没长大!");
Console.WriteLine("回家上学去!");
}
注意:
1.else后面不要加分号。
2.else后面不要加小括号。
3.if...else if...else if...else 多分支。
//输入
Console.Write("老狼老狼几点了?");
string s = Console.ReadLine();
int hour = Convert.ToInt32(s);

if (hour >= 0 && hour < 6) // 0<hour<6:错误
{
Console.WriteLine("凌晨" + hour + "点了");
}
else if (hour >= 6 && hour <= 12)
{
Console.WriteLine("上午" + hour + "点了");
}
else if (hour > 12 && hour < 18)
{
hour -= 12;
Console.WriteLine("下午" + hour + "点了");
}
else if (hour >= 18 && hour < 24)
{
hour -= 12;
Console.WriteLine("晚上" + hour + "点了");
}
else
{
Console.WriteLine("不可识别的时间!");
}
4.if嵌套。
if(...)
{
if(...)
{
}
else
{
}
}
else
{
if(...)
{
}
else
{
}
}
分层、分类来解决问题的思路。
作业:
1.老狼几点了。凌晨,上午,下午,晚上。

Console.Write("请输入时间:");
string s = Console.ReadLine();
int h = Convert.ToInt32(s);
if (h >= 0 && h < 6)
{
Console.WriteLine("时间是凌晨" + h + "点");
}
else if (h >= 6 && h <= 12)
{
Console.WriteLine("时间是上午" + h + "点");
}
else if (h > 12 && h <= 18)
{
h -= 12;
Console.WriteLine("时间是下午" + h + "点");
}
else if (h > 18 && h <= 24)
{
h -= 12;
Console.WriteLine("时间是晚上" + h + "点");
}
else
{
Console.WriteLine("输入时间错误");
}

2.判断一元二次方向根的情况。

Console.WriteLine("请输入方程系数a、b、c");
string s = Console.ReadLine();
string s1 = Console.ReadLine();
string s2 = Console.ReadLine();
int a, b, c;
double d;
a = Convert.ToInt32(s);
b = Convert.ToInt32(s1);
c = Convert.ToInt32(s2);
d = b * b - 4 * a * c;
if (a == 0)
{
Console.WriteLine("不是一元二次方程");
}
else if (d > 0)
{
Console.WriteLine("有两个实根");
}
else if (d < 0)
{
Console.WriteLine("没有实根");
}
else
{
Console.WriteLine("有一个实根");
}

3.输入一个年份,判断是闰年还是平年。

Console.Write("请输入年份:");
string s = Console.ReadLine();
int year = Convert.ToInt32(s);
if (year > 0 && year < 9999)
{
if (year % 400 == 0)
{
Console.WriteLine(year + "年是闰年");
}
else if (year % 4 == 00 && year % 100 != 0)
{
Console.WriteLine(year + "年是闰年");
}
else
{
Console.WriteLine(year + "年是平年");
}
}
else
{
Console.WriteLine("输入年份有问题,请核对");
}

4.称体重。
男人的标准体重是:体重(kg)=身高(cm)-100。
女人的标准体重是:体重(kg)=身高(cm)-110。
上下浮动3公斤属正常
要求输入性别、身高和体重,输出正常,偏胖,偏瘦

Console.Write("请输入性别:");
string sex = Console.ReadLine();
Console.Write("请输入身高:");
string h = Console.ReadLine();
Console.Write("请输入体重");
string w = Console.ReadLine();
int h1, w1, b, n;
h1 = Convert.ToInt32(h);
w1 = Convert.ToInt32(w);
if (sex == "男")
{
n = h1 - 100;
b = w1 - n;
if (b >= -3 && b <= 3)
{
Console.WriteLine("体重正常");
}
else if (b < -3)
{
Console.WriteLine("略瘦");
}
else
{
Console.WriteLine("略胖");
}

}
else if (sex == "女")
{
n = h1 - 110;
b = w1 - n;
if (b >= -3 && b <= 3)
{
Console.WriteLine("体重正常");
}
else if (b < -3)
{
Console.WriteLine("体重偏瘦");
}
else
{
Console.WriteLine("偏胖");
}
}
else
{
Console.WriteLine("性别输入错误");
}

5.输入年、月、日,判断是否是个正确的日期。

Console.Write("请分别输入年月日");
string year1 = Console.ReadLine();
string month1 = Console.ReadLine();
string day1 = Console.ReadLine();

int year = Convert.ToInt32(year1);
int month = Convert.ToInt32(month1);
int day = Convert.ToInt32(day1);
if (year > 0 && year < 9999)
{
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
{
if (day > 0 && day <= 31)
{
Console.WriteLine("日期正确");
}
else
{
Console.WriteLine("日期错误");
}
}
else if (month == 4 || month == 6 || month == 11 || month == 9)
{
if (day > 0 && day <= 30)
{
Console.WriteLine("日期正确");
}
else
{
Console.WriteLine("日期错误");
}
}
else if (month == 2)
{
if (year % 400 == 0 || year % 4 == 00 && year % 100 != 0)
{
if (day > 0 && day <= 29)
{
Console.WriteLine("日期正确");
}
else
{
Console.WriteLine("日期错误");
}
}
else
{
if (day > 0 && day <= 28)
{
Console.WriteLine("日期正确");
}
else
{
Console.WriteLine("日期错误");
}
}

}
else
{
Console.WriteLine("日期错误");
}
}
else
{
Console.WriteLine("日期错误");
}

时间: 2024-10-24 19:17:54

1222——算数运算符、关系运算符、逻辑运算符、语句的相关文章

javascript运算符——关系运算符

× 目录 [1]恒等 [2]相等 [3]大于[4]小于 前面的话 关系运算符用于测试两个值之间的关系,根据关系是否存在而返回true或false,关系表达式总是返回一个布尔值,通常在if.while或for语句中使用关系表达式,用以控制程序的执行流程 javascript提供了===.!==.==.!=.<.<=.>.>=8个关系运算符,本文将分为4类介绍关系运算符 恒等运算符 恒等运算符'===',也叫严格相等运算符,首先计算其操作数的值,然后比较这两个值,比较过程没有任何类型转

C语言基础学习运算符-关系运算符

比较大小 首先,我们得先了解一下布尔类型.C语言的C99标准支持布尔类型,关键字为_Bool,用于表示逻辑值true与false.C语言用值1表示true, 用值0表示false.因此布尔类型实际上是一种整数类型. 程序常常使用含有关系运算符的表达式进行分支和循环操作.我们将在分支和循环的章节中具体学习. C语言提供6种关系运算符,如下所示: 看个简单的实例吧: #include <stdio.h> int main(void) { int a = 5; int b = 3; /*根据变量a和

shell之算数运算符、逻辑运算符、关系运算符、布尔运算符、文件测试运算符

注意事项: (1)bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用: (2)完整的表达式要被 ` ` 包含,注意这个字符不是常用的单引号,在 Esc 键下边. (3)条件表达式要放在方括号之间,变量与符号之间必须以空格隔开,命令才可以识别: (4)乘号(*)在shell中有特殊含义,作为乘法符号时,要在*前边必须加反斜杠(\)才能实现乘法运算: (5)关系运算符采用的是英文字母的缩写,等于(-eq,equal),不等于(-ne,not equ

C语言基础第二课 -----布尔类型,关系运算符,逻辑运算符,

/* 布尔类型: 1.c89没有布尔类型,c99有布尔类型.c工程支持c89,oc工程c99. 2.两种数值: bool true(真)   false(假) C语言 BOOL YES(真)      NO(假)   OC语言 3.真和假的表示 C语言   非0即为真  0就是假 OC语言   YES定义为1  NO定义为0 4.输出转换符是%d 5.作用:用于分支结构和循环的判断. */ //    BOOL a1 = YES; //    BOOL a2 = NO; //    printf

【Shell脚本学习10】Shell运算符:Shell算数运算符、关系运算符、布尔运算符、字符串运算符等

Bash 支持很多运算符,包括算数运算符.关系运算符.布尔运算符.字符串运算符和文件测试运算符. 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用. expr 是一款表达式计算工具,使用它能完成表达式的求值操作. 例如,两个数相加: #!/bin/bash val=`expr 2 + 2` echo "Total value : $val" 运行脚本输出: Total value : 4 两点注意: 表达式和运算符之间要有空格,

Python算术运算符、赋值运算符、关系运算符、逻辑运算符、条件运算符(三元运算符)

# 算术运算符 # + 加法运算符(如果是两个字符串之间进行加法运算,则会进行拼串操作) # - 减法运算符 # * 乘法运算符(如果将字符串和数字相乘,则会对字符串进行复制操作,将字符串重复指定次数) # / 除法运算符,运算时结果总会返回一个浮点类型 # // 整除,只会保留计算后的整数位,总会返回一个整型 # ** 幂运算,求一个值的几次幂 # % 取模,求两个数相除的余数 # 赋值运算符 # = 可以将等号右侧的值赋值给等号左侧的变量 # += a += 5 相当于 a = a + 5

shell运算符之 关系运算符,算数运算符,布尔运算符,字符串运算符和文件测试运算符

shell运算符有很多,关系运算符,算数运算符,布尔运算符,字符串运算符和文件测试运算符 1,算术运算符 原声bash 不支持简单的算术运算,可以使用expr 工具 两点注意: 表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2,这与我们熟悉的大多数编程语言不一样. 完整的表达式要被 ` ` 包含,注意这个字符不是常用的单引号,在 Esc 键下边. #!/bin/basha=10b=20rst=`expr 2 + 2`echo '2+2 =' ${rst} rst=`exp

C#2 (数值类型及调用、引用类型及调用、装拆箱、常量、变量、数据类型转换、算术运算符、赋值运算符、关系运算符、逻辑运算符、字符串的常用方法)

一.数值类型及其调用原理 名称 说明 所占字节 范围 byte 字节型 1 -27~27-1 short 短整型 2 -215~215-1 int 整型 4 -231~231-1 long 长整型 8 -263~263-1 char 字符型 1 0~65535 float 单精度型 4 ±1.5*10-45~±3.4*1038 double 双精度型 8 ±5.0*10-324~±1.7*10308 bool 布尔型 1 只有true和false两个值 static void Main(stri

17.2015.08.04第十八节课 C#2 (数值类型及调用、引用类型及调用、装拆箱、常量、变量、数据类型转换、算术运算符、赋值运算符、关系运算符、逻辑运算符、字符串的常用方法)

一.数值类型及其调用原理 名称 说明 所占字节 范围 byte 字节型 1 -27~27-1 short 短整型 2 -215~215-1 int 整型 4 -231~231-1 long 长整型 8 -263~263-1 char 字符型 1 0~65535 float 单精度型 4 ±1.5*10-45~±3.4*1038 double 双精度型 8 ±5.0*10-324~±1.7*10308 bool 布尔型 1 只有true和false两个值 static void Main(stri

十一、 BOOL类型、分支结构和关系运算符

BOOL类型:表示非真即假.只有两个值:YES和NO,而二进制只识别二进制数,所以,将YES替换为“1”,NO替换为“0” BOOL数据类型占一字节的空间内存 BOOL数据类型输出为:%lu:输入为:%s 关系运算符:“<,<=,>,>=,==,!=”判断两个值是否相等,一定要用“==”,结果值用BOOL存储. 优先级:[<,<=,>,>=(属同级运算符)] > [==,!=(属同级)] 运算符优先级:算术运算符>关系运算符>逻辑运算符&g