1.基本运算符、输入输出
12.23上午----基本运算符、输入输出
using System;namespace Day03_1
{class Program{static void Main(string[] args){//不同的浮点数,后面要接的字母区分//float scale = 0.85f;//double newscale = 0.75;//decimal s = 0.9m;//赋值运算符 " = " int xiaomingApples = 3;int xiaohongApples = 0;//xiaohongApples = 3;//让小红的苹果数量与小明相等xiaohongApples = xiaomingApples;//算术运算符 " + " 、" - "、 " * "," / "//让小红的苹果数量比小明多三个xiaohongApples = xiaomingApples + 3;//让小红的苹果数量比小明少三个xiaohongApples = xiaomingApples - 3;//小红的苹果数量是小明的3倍xiaohongApples = xiaomingApples * 3;//小红的苹果数量是小明的1/3、出除数不能为0xiaohongApples = xiaomingApples / 3;//小红的苹果数量是小明的3倍多一个xiaohongApples = xiaomingApples * 3 + 1;//小红的苹果数量是小明的4倍用小括号,小括号优先级最高xiaohongApples = xiaomingApples * (3 + 1);/取余运算符 ” % “int applePrice = 3;float yourMoney = 10;//你的钱全部用来买苹果后剩余的钱yourMoney = yourMoney % applePrice;//你的钱从新变成10yourMoney = 10;//你的钱全部买苹果,可以买几个//两个整数进行除法运算,结果还是一个整数//小数点后面的内容,被省略float count = yourMoney / applePrice;Console.WriteLine("可以买到的苹果数量:");Console.WriteLine(count);///一元运算符++、--//今天捡到一块钱//yourMoney = yourMoney + 1;//用一元运算符表示为yourMoney++;//今天丢掉一块钱//yourMoney = yourMoney - 1;yourMoney--;//我的钱是你花了一块钱之后的钱yourMoney--;float myMoney = yourMoney;myMoney = yourMoney--;Console.WriteLine("我的钱:");Console.WriteLine(myMoney);Console.WriteLine("你的钱:");Console.WriteLine(yourMoney);yourMoney = 10;myMoney = 0;myMoney = yourMoney--;//先赋值再计算Console.WriteLine("New 我的钱【yourMoney--】:");Console.WriteLine(myMoney);yourMoney = 10;myMoney = 0;myMoney = --yourMoney;//先计算后赋值Console.WriteLine("New 我的钱【--yourMoney】:");Console.WriteLine(myMoney);//【练习】int number = 10;//问number最后等于几number = number++ + --number - ++number;//[number++]整体结果10,是未自增的结果,变为11//[--number]整体结果10,变为10//[++number]整体结果11,变为11//10 + 10 - 11 = 9Console.WriteLine(number);复合运算符 "+=" ,"-=" , "*=", "/=" ,"%="int numberA = 10;//A的值是原来的一半numberA = numberA / 2;//简便写法numberA /= 2;//是否是男性bool isMan = false;isMan = true;//char heroProperty = '风';//heroProperty = '火';//两个字符串连接成一个新的字符串【+成为连接运算符】string myName = "xiaoming";string myAddress = "beijing";string message = myName + "-" + myAddress;message += "ABC";Console.WriteLine(message);//输入与输出//输出Console.WriteLine(); 输出内容并换行,可以什么都不用做,可以是任意类型-->将所有数据类型转换成字符串//输出Console.Write(); 输出内容不换行,必须有值,可以为空Console.WriteLine();Console.Write("");//常见的输出方式Console.WriteLine("输出的结果是:");Console.WriteLine(isMan);Console.WriteLine("计算的结果是:" + isMan);//字符串与非字符串进行连接”+“,本质是将非字符串转为字符串类型Console.WriteLine("我想显示一个数:" + 5);//输出 我想显示一个数:5Console.WriteLine("我想显示一个数:" + 5 + 3);//输出 我想显示一个数:53Console.WriteLine(5 + 3 + "我想显示一个数:");//输出 8我想显示一个数:Console.WriteLine(5 + "我想显示一个数:" + 3);//输出 5我想显示一个数:3//Console.WriteLine();其他的传参方式int resultA = 3, resultB = 4;Console.WriteLine("结果A:" + resultA + " " + "结果B:" + resultB);//两种新的输出方式Console.WriteLine($"结果A:{resultA} 结果B:{resultB}");Console.WriteLine("结果A:{0} 结果B:{1}",resultA,resultB);//占位符//输入Console.ReadLine();//输入Console.Read();//从屏幕读取一个字符,返回结果//int readVaule = Console.Read();//输出读取到的结果,第一个字符对应的编码数字//Console.WriteLine($"结果为{readVaule}");//从屏幕读取一个字符串,返回该字符串string readStr = Console.ReadLine();//输出读取到的字符串Console.WriteLine("结果为:" + readStr);}}
}
2.数据类型转换、关系和逻辑运算符
using System;
namespace Day03_2
{class Program{static void Main(string[] args){//数据类型转换#region 1.隐式转换//将占用字节小的、取值范围小的、精度低的转换为占用字节大的、取值范围大的、精度高的数据类型//不需要任何的修饰词,会自动转换//将取值范围小的值用取值范围大的数据类型变量存储sbyte age = 10;int newAge = age;//将精度小的值用精度大的数据类型变量存储float money = 32.5f;double newMoney = money;#endregion#region 2.显示转换(强制转换)//将占用字节大的、取值范围大的、精度高的转换成为占用字节小的、取值范围小的、精度低的数据类型//强制转换,结果有可能会有问题//1.数字类型//短整型转换为sbyte类型,可能会有精度缺失或出现错误short score = 10000;sbyte newScore = (sbyte)score;Console.WriteLine("newScore:" + newScore);//浮点型转换为整型,可能会有精度缺失或出现错误float adBuff = 36.5f;int intADBuff = (int) adBuff;Console.WriteLine("intADBuff:" + intADBuff);//双精度转换为单精度,可能会有精度缺失或出现错误double distance = 100.20234452354353;float newDistance = (float) distance;Console.WriteLine("newDistance:" + newDistance);//2.布尔类型//非bool类型是无法转换为bool类型的//3.字符类型//将char转换为Int,是隐式转换char myChar = 'a';int number = myChar;将Int转换为char类型,是显示转换myChar = (char) number;Console.WriteLine("myChar:" + myChar);//4.字符串类型//将字符串转换为具体的某个数据类型,[类型].Parse//使用具体方法进行转换//string myStr = "false";//bool str_bool = bool.Parse(myStr);//int str_int = int.Parse(myStr);//float str_float = float.Parse(myStr);//char str_char = char.Parse(myStr);//Console.WriteLine($"结果:{str_bool}");//$"{str_int},"+//$"{str_float}"+//$"{str_char}");//第二种将字符串转换为其他数据类型的方式,Convert.To//int str_int32 = Convert.ToInt32(myStr);#endregion//关系运算符&逻辑运算符#region 3.关系运算符//关系运算符 > , < , == , >= , <= , !=int numberA = 10;int numberB = 10;bool result = numberA == numberB;Console.WriteLine(result);浮点数精度问题?#endregion#region 4.逻辑运算符//逻辑运算符 & , |, &&, || , !//普通与运算【&】————一假则假,全真则真,全部都计算一遍number = 10;//number > 0 & number < 100result = number > 0 & number < 100;Console.WriteLine(result);//短路与运算【&&】number = -1;//number > 0 && number < 100result = number++ > 0 && --number < 50;Console.WriteLine(result);//普通或运算【|】----有真则真,全假则假,也是全都算一遍//短路或运算【||】//非运算【!】bool lightingOn = false;lightingOn = !lightingOn;#endregion}}
}
3.作业
using System;namespace Homework01
{class Program{static void Main(string[] args){//第一题// 编写?个程序,?户输?两个整数,计算两个整数的商,并返回结果Console.WriteLine("请输入第1个整数");int number1 = Convert.ToInt32(Console.ReadLine());Console.WriteLine("请输入第2个整数");int number2 = Convert.ToInt32(Console.ReadLine());int number3 = number1 / number2;Console.WriteLine(number3);Console.WriteLine();/*第二题编写?个程序:领取奖励的条件是:通关前三个关卡前三关获取的星星数量要?于或等于6个第?关是?颗星或第三关是?颗星?户输?:第?关获得的星星:如未过关,星星数量为0第?关获得的星星:如未过关,星星数量为0第三关获得的星星:如未过关,星星数量为0第四关获得的星星:如未过关,星星数量为0第五关获得的星星:如未过关,星星数量为0判断该玩家是否可以领取奖励,可以领取打印True,不能领取打印False*/int star1, star2, star3, star4, star5, count;Console.WriteLine("请输入第1关获得的星星数:");star1 = Convert.ToInt32(Console.ReadLine());Console.WriteLine("请输入第2关获得的星星数:");star2 = Convert.ToInt32(Console.ReadLine());Console.WriteLine("请输入第3关获得的星星数:");star3 = Convert.ToInt32(Console.ReadLine());Console.WriteLine("请输入第4关获得的星星数:");star4 = Convert.ToInt32(Console.ReadLine());Console.WriteLine("请输入第5关获得的星星数:");star5 = Convert.ToInt32(Console.ReadLine());count = star1 + star2 + star3;bool result7 = star3 != 0 && count >= 6 && (star2 == 1 || star3 == 1);Console.WriteLine(result7);Console.WriteLine();//第三题//1.number初值为6:number++ * ++number - number-- / --numberint number = 6;int result = number++ * ++number - number-- / --number;Console.WriteLine(result);//2.number初值为5:number++ > 3 | --number == 0number = 5;bool result1 = number++ > 3 | --number == 0;Console.WriteLine(result1);Console.WriteLine(number);//3.number初值为2:number-- > 2 && --number == 0number = 2;bool result2 = number-- > 2 && --number == 0;Console.WriteLine(result2);Console.WriteLine(number);//4.number初值为12:number++ > 10 && --number != 2 && number-- == 0 && ++number != 3number = 12;bool result3 = number++ > 10 && --number != 2 && number-- == 0 && ++number != 3;Console.WriteLine(result3);Console.WriteLine(number);//5.number初值为0:number++ > -1 || --number <= 2 && number-- != 10number = 0;bool result4 = number++ > -1 || --number <= 2 && number-- != 10;Console.WriteLine(result4);Console.WriteLine(number);//6.number初值为0:number++ < -1 || (--number >= 2 && number-- != 10)number = 0;bool result5 = number++ < -1 || (--number >= 2 && number-- != 10);Console.WriteLine(result5);Console.WriteLine(number);Console.WriteLine();//第四题//变量pi的值为3.14159,查看MSDN,打印pi的值,并保留两位?数double pi = Math.PI;Console.WriteLine(pi.ToString("0.00")); //保留两位小数Console.WriteLine();/*第五题在Console.WriteLine括号中输?如下内容,思考打印的结果,并编程验证你的结果“abc” + 3 + 514 + 3 * 4 + “!”25 + " Love " + 27*/Console.WriteLine("abc"+ 3 + 5);//abc35Console.WriteLine(14 + 3 * 4 + "!");//26!Console.WriteLine(25 + " Love " + 27);//25 Love 27//第六题//查看MSDN,搜索Console.WriteLine(),查看各种特殊打印的?式,去搜寻宝藏吧}}
}