Day4
一、运算符
算术运算符
- //算数运算符 + - * / % ++ --
- // + 1.求和 2.字符串拼接
- int intNumber = 100;
- int intNumber1 = 200;
- int intNumber2 = intNumber + intNumber1;
- byte byteNumber = 255;
- double doubleNumber = 300;
- long longNumber = 400;
- float floatNumber = 100.0f;
- char charNumber = 'a';
- bool boolNumber = false;
- //小区间和大区间相加求和 系统自动把小区间先转换成大区间类型 然后再加求和
- Console.WriteLine((intNumber + byteNumber).GetType().ToString());
- Console.WriteLine(intNumber + byteNumber);
- Console.WriteLine((intNumber + longNumber).GetType().ToString());
- Console.WriteLine((intNumber + floatNumber).GetType().ToString());
- Console.WriteLine((doubleNumber + floatNumber).GetType().ToString());
- //charNumber 转换成对于ascii 10进制数字 然后和对应数字相加求和
- Console.WriteLine(charNumber+intNumber);
- Console.WriteLine((charNumber+intNumber).GetType().ToString());
- //不允许使用+号操作数字类型与bool类型
- //Console.WriteLine(intNumber+boolNumber);
- //拼接
- string stringNumber = "123a";
- string stringNumber1 = "456";
- Console.WriteLine(stringNumber + stringNumber1);
- int intNumber3 = 789;
- Console.WriteLine(stringNumber + intNumber3);
- char charNumber3 = 'b';
- //charNUmber3 转换成字符串类型 然后和字符串拼接
- Console.WriteLine(stringNumber + charNumber);
- // -
- int intNumber4 = 100;
- int intNumber5 = 50;
- float floatNumber5 = 100.0f;
- double doubleNumber5 = 30.0;
- bool boolNumber5 = true;
- Console.WriteLine(intNumber4 - intNumber5);
- Console.WriteLine((intNumber4 - intNumber5).GetType().ToString());
- Console.WriteLine(intNumber4 - floatNumber5);
- Console.WriteLine((intNumber4 - floatNumber5).GetType().ToString());
- //不允许使用 - 号操作数字类型与bool类型
- //Console.WriteLine(intNumber4 - boolNumber5);
- //小区间和大区间相减 系统自动把小区间先转换成大区间类型 然后再相减
- Console.WriteLine((intNumber4 - floatNumber5).GetType().ToString());
- //字符串与数字相减
- string strNumber = "123";
- //不允许使用 - 号 操作数字类型与字符串类型
- //Console.WriteLine(strNumber - intNumber4);
- // * / % 同上
- //Console.WriteLine(boolNumber5 * intNumber1);
- //Console.WriteLine(strNumber * intNumber);
- // ++ -- 让变量自身 加1 或者 减1
- int intNumber10 = 10;
- int intNumber11 = 20;
- //++放在变量之前 先加一 再运算
- //++放在变量之后 先运算 再加一
- Console.WriteLine(intNumber10++);// intNumber10 = intNUmber10+1
- Console.WriteLine(intNumber);
- ++intNumber10;
- intNumber10++;
- Console.WriteLine(++intNumber10);
- Console.WriteLine(intNumber10++);
- int intNumber12 = 100;
- int intNumber13= 50;
- intNumber12++;
- ++intNumber13;
- //
- Console.WriteLine(intNumber12+intNumber13);
- //
- Console.WriteLine((intNumber13++)+(intNumber12++));
- //
- //
- //
- Console.WriteLine((++intNumber12)+(intNumber12++));
- //
- //
- Console.WriteLine((intNumber13--)-(intNumber12++));
- //
- //
- Console.WriteLine((intNumber13++) + (intNumber12--) + (intNumber12--) - (intNumber13++) - (--intNumber12) + (--intNumber13));
关系运算符
- //关系运算符 > < >= <= == !=
- int intNumber15 = 100;
- int intNumber16 = 200;
- float floatNumber15 = 100.0f;
- bool isTrue = intNumber15 > intNumber16;
- Console.WriteLine(isTrue);
- bool isTrue1 = intNumber15 < floatNumber15;
- Console.WriteLine(isTrue1);
- bool isTrue2 = intNumber15 == floatNumber15;
- Console.WriteLine(isTrue2);
- string stringNumber15 = "123";
- string stringNumber16 = "123";
- //不允许字符串之间使用< > <= >=
- //bool isTrue3 = stringNumber15 < stringNumber16;
- //允许字符串之间使用 == 和 != 比较的是两个字符的内容是否相等
- bool isTrue4 = stringNumber15 == stringNumber16;
- //字符串对象 提供的内置方法 判断两个字符串是否相等
- bool isTrue5 = stringNumber15.Equals(stringNumber16);
- Console.WriteLine(isTrue5);
逻辑运算符
- //逻辑运算符
- // && 与 所有条件全部满足,结果为:true 至少有一项不满足,结果为:false
- // || 或 满足至少一个条件,结果为:true 不满足任意一个条件,结果为:false
- //
- // ! 取反 取true或者false的反向值
- int intNumber17 = 100;
- int intNumber18 = 200;
- int intNumber19 = 300;
- int intNumber20 = 400;
- //
- //
- bool isTrue6 = intNumber17 < intNumber18 && intNumber16 > intNumber15;
- Console.WriteLine(isTrue6);
- //
- //
- bool isTrue7 = intNumber17==intNumber16 || intNumber18 > intNumber17;
- Console.WriteLine(isTrue7);
- bool isTrue8 = !(intNumber18 > intNumber17);
- Console.WriteLine(isTrue8);
- //
- //
- //
- bool isTrue9 = intNumber15 > intNumber16 && intNumber18 < intNumber17 && intNumber16 < intNumber15;
- Console.WriteLine(isTrue9);
- //
- //
- //
- //
- bool isTrue10 = intNumber15 > intNumber16 && intNumber18 < intNumber17 && intNumber16 < intNumber15 || intNumber17 < intNumber16;
- Console.WriteLine(isTrue10);
- //
- bool isTrue11 = intNumber15 > intNumber16 || intNumber18 < intNumber17 && intNumber16 < intNumber15 && intNumber17 < intNumber16;
- Console.WriteLine(isTrue11);
赋值运算符
- //赋值运算符 = += -= *= /= %=
- // = 赋值 运算逻辑 从右到左
- int intNumber21 = 100;
- // += 变量自增某个数值 类似于++(区别:++只加1 +=可以设定数值大小) +=不能写在变量前
- intNumber21 += 5;
- intNumber21 -= 10;
- intNumber21 *= 10;
- intNumber21 /= 10;
- intNumber21 %= 10;
- Console.WriteLine(intNumber21);
- // sizeof() 返回数据类型的大小
- Console.WriteLine(sizeof(int));
- Console.WriteLine(sizeof(long));
- //GetType() 查看当前数据的类型
- Console.WriteLine((intNumber21).GetType().ToString());
三元运算符
- // 三目(三元)运算符
- // ? : 条件表达式(如果条件为真 则为X:否则为y)
- //数据类型 变量名 = 条件表达式 ? "条件为真,输出左" : "条件为假,输出右"
- string str = intNumber < intNumber10 ? "条件为真" : "条件为假";
- Console.WriteLine(str);
二、循环语句
if语句
- //一、if语句
- int a = 1;
- if(a < 1)
- {
- Console.WriteLine("内容符合要求");
- }
if-else语句
- //二、if-else语句
- /*题目一:让用户输入年龄,如果输入的年龄大于23(含23岁)岁,则给用户显示你到了结婚的年龄了。*/
- Console.Write("请输入你的年龄:");
- int age = Convert.ToInt32(Console.ReadLine());
- if (age >= 23)
- {
- Console.WriteLine("恭喜你,到了结婚的年龄了!!!");
- }
- else
- {
- Console.WriteLine("很可惜,你还没有到结婚的年龄。");
- }
- Console.ReadKey();
- /*题目三:如果小红的(Chinese music)
- 语文成绩大于90并且音乐成绩大于80 或
- 语文成绩等于100并且音乐成绩大于70,则奖励100元.
- */
- Console.WriteLine("请输入小红的语文成绩:");
- float chinese = Convert.ToSingle(Console.ReadLine());
- Console.WriteLine("请输入小红的音乐成绩:");
- float music = Convert.ToSingle(Console.ReadLine());
- if ((chinese > 90 && music > 80) || (chinese == 100 && music > 70))
- {
- Console.WriteLine("恭喜你,成绩达标,奖励100元");
- }
- else
- {
- Console.WriteLine("很可惜,成绩不达标,再接再厉");
- }
- Console.ReadKey();
- //题目六:找出3个数字中最大的数字,不考虑相等
- Console.WriteLine("三个数比大小");
- Console.WriteLine("请输入第一个数字:");
- int one = Convert.ToInt32(Console.ReadLine());
- Console.WriteLine("请输入第二个数字:");
- int two = Convert.ToInt32(Console.ReadLine());
- Console.WriteLine("请输入第三个数字:");
- int three = Convert.ToInt32(Console.ReadLine());
- if (one > two && one > three)
- {
- Console.WriteLine("第一个数最大:" + one);
- }
- else if (two > one && two > three)
- {
- Console.WriteLine("第二个数最大:" + two);
- }
- else if (three > one && three > two)
- {
- Console.WriteLine("第三个数最大:" + three);
- }
- else
- {
- Console.WriteLine("三个数的大小相等");
- }
- Console.ReadKey();
- /*题目八:提示用户输入用户名,然后再提示输入密码,如果用户名是“admin”,
- * 并且密码是“123”,则提示正确,否则,如果用户名不是“admin”,则提示用户名不存在
- * 如果用户名是“admin”,但密码不是“123”,则提示密码错误
- * 如果都不符合,则提示用户名和密码都错误
- */
- Console.WriteLine("请输入你的用户名:");
- string username = Console.ReadLine();
- Console.WriteLine("请输入你的密码:");
- string pwd = Console.ReadLine();
- if (username == "admin" && pwd == "123")
- {
- Console.WriteLine("登陆成功!");
- }
- else if (username == "admin")
- {
- Console.WriteLine("密码错误");
- }
- else if (pwd == "123")
- {
- Console.WriteLine("用户名不存在");
- }
- else
- {
- Console.WriteLine("用户名和密码都错误!");
- }
- /*题目五:对小明的期末成绩进行评估
- * 成绩>=90:A
- * 90>成绩>=80:B
- * 80>成绩>=70:C
- * 70>成绩>=60:D
- * 成绩<60:E
- */
- Console.WriteLine("请输入小明的期末成绩:");
- int score = Convert.ToInt32(Console.ReadLine());
- if (score >= 90)
- {
- Console.WriteLine("小明的期末成绩评分是:A");
- }
- else if (score >= 80 && score < 90)
- {
- Console.WriteLine("小明的期末成绩评分是:B");
- }
- else if (score >= 70 && score < 80)
- {
- Console.WriteLine("小明的期末成绩评分是:C");
- }
- else if (score >= 60 && score < 70)
- {
- Console.WriteLine("小明的期末成绩评分是:D");
- }
- else
- {
- Console.WriteLine("小明的期末成绩评分是:E");
- }
- Console.ReadKey();
- //另一种方式
- //题目五:第二种解法
- Console.WriteLine("请输入小明的期末成绩:");
- int score1= Convert.ToInt32(Console.ReadLine());
- if(score1 >= 90)
- {
- Console.WriteLine("A");
- }
- else if(score1 >= 80)
- {
- Console.WriteLine("B");
- }
- else if(score1 >= 70)
- {
- Console.WriteLine("C");
- }
- else if(score1 >= 60)
- {
- Console.WriteLine("D");
- }
- else
- {
- Console.WriteLine("E");
while循环
- //while循环
- //例子1
- int i = 0;
- while (i < 10)
- {
- Console.WriteLine("执行第" + i + "次");
- i = i + 1;
- }
do -while循环
- //do -while循环
- //例子
- //int s;
- //bool b = true;
- //do
- //{
- // Console.WriteLine("请输入密码:");
- // bool isTrue=int.TryParse(Console.ReadLine(),out s);
- // if (isTrue && s == 123)
- // {
- // b= false;
- // Console.WriteLine("密码正确");
- // }
- // else
- // {
- // Console.WriteLine("密码错误");
- // }
- //}while (b);
嵌套语句
- while嵌套
- //while (b)
- //{
- // Console.WriteLine("2");
- // while (b)
- // {
- // Console.WriteLine("1");
- // }
- //}
- for (float i = 0f; i < 5.5; i += 0.5f)
- {
- Console.WriteLine();
- }
- //for(int i=0;i<5;i++)
- //{
- // Console.WriteLine(i);
- //}
- //for循环嵌套
- //for (int i=0;i<5; i++)
- //{
- // Console.WriteLine(i);
- // for(int j=0;j<5;j++)
- // {
- // Console.WriteLine(j);
- // }
- //}
跳出循环语句
//break语句 跳出当前循环
//continue语句 跳出当次循环 进行下次循环
- //无限循环
- //for(; ; ) { }
- //while (true) { }
- //for(; ; )
- //{
- // Console.WriteLine("请输入你的账户:");
- // string str = Console.ReadLine();
- // if (str == "123")
- // {
- // Console.WriteLine("登陆成功");
- // break;
- // }
- // else
- // {
- // }
- //}
goto语句
- //goto 语句 指定语句跳转
- //Longin:
- // Console.WriteLine("请输入你的账号:");
- // string str = Console.ReadLine();
- // if (str == "123")
- // {
- // Console.WriteLine("登陆成功");
- // }
- // else
- // {
- // goto Longin;
- // }
swich语句
- //swich语句 条件分支语句
- //switch(表达式)
- //{
- // case 值1:
- // 语句1;
- // break;
- // case 值2:
- // 语句2;
- // break;
- // 。。。。
- // default:
- // 语句n;
- // break;
- // }
- //1.switch()中的变量可以是整形、string、bool、char、枚举或相应可以为null的类型,
- //2.必须有一个定值。
- //3.每个case标签后是常量表达式的值,不必连接,
- //4.default标签可选,意思是其余的结果。
- //5.break语句的作用是在case与case之间中断程序
Console.WriteLine("请输入星期几:");
string str2 = Console.ReadLine();
switch (str2)
{
case "周一":
{
Console.WriteLine(1);
}
break;
case "周二":
{
Console.WriteLine(2);
}
break;
case "周三":
{
Console.WriteLine(3);
}
break;
default:
{
Console.WriteLine(4);
}
break;
}