using System;
namespace Lesson02
{
class MainClass
{
public static void Main (string[] args)
{
// // 算术运算符
// // 运算符
//
// // 赋值运算符
// // = 作用: 给变量赋值
// //使用
// int num = 10;
// num = 1000;
//
// //将一个变量的值赋值给另一个变量
// int num2 = num;
//
// //注意: 赋值云算法两边的类型一般要求一致
// // int num3 = 1.2;(不能隐式转换)
// // float f = 1;(数据两边类型不同,但可以进行数据隐式转换)
//
// // + 求和 - *
// int a = 29;
// int sum = 10 + 20 + a;
// int sum1 = sum + 10;
// Console.WriteLine (sum);
//
// // /
// // 除法两边都是整数,做整除运算,返回的是商
// // 除法两边有一边是浮点类型,返回的是小数
// // 除法运算除数不能为0 分母是除数 分子是被除数
// Console.WriteLine (1 / 2.0);
//
// // % 取余运算符 作用: 在整除过程中,返回余数
// Console.WriteLine (5 % 2);
//
// // ++ 自增运算符
// int coun = 100;
// //在编程中经常要进行+1操作
// //coun = coun + 1;
// //coun = coun + 1;
// coun += 1;
// coun++;
// ++coun;
// Console.WriteLine ();
// Console.WriteLine (coun);
// int count = 10;
// int wrap = 20;
// wrap = ++count;
// Console.WriteLine (count);
// Console.WriteLine (wrap);
//
//算术运算符
//重点 ++ 在变量之前,返回加1之后的值
// ++ 在变量之后,返回加1之前的值
//
// int count = 0;
// // ++count n = 11;count = 1;
// //count++: n = 10;count = 1;
// int n = 10 + ++count;
// Console.WriteLine ("n =" + n);
// Console.WriteLine ("count =" + count);
//
// //表达式 : 常量或变量和运算符组合
// // 1.一个表达式,根据运算符进行某种运算或操作
// // 2.一个表达式,一定会返回一个结果
//// 10 + 10 ;(是表达式)
// // 练习
// int n1 = 100;
// Console.WriteLine (++n1);
//
// a = 4 b = 3
// int a = 3;
// int b = 0;
// b = a++;
// Console.WriteLine (a);
// Console.WriteLine (b);
//
// // a = 4 b = 4
// int aa = 3;
// int bb = 0;
// bb = ++aa;
// Console.WriteLine (aa);
// Console.WriteLine (bb);
//
// m = 6 k = 5
// int m = 5;
// int k = 9;
// k = m++;
// Console.WriteLine (++m);
// Console.WriteLine (k);
//
/*
//复合运算符
// a = a + b; => a += b;
//基本输入输出
//1. 原样输出
/*
string s = "Hello";
//字符串拼接
Console.WriteLine ("Hello" + "World");
Console.WriteLine (s + "world");
Console.WriteLine ("true" + s);
// 2.格式输出
// 欢迎***,今天星期*,你今年**岁
string name = "张三";
string week = "四";
int age = 18;
// Console.WriteLine ("欢迎张三,今天星期四,你今年18岁");
Console.WriteLine ("欢迎{0},今天星期{1},你今年{2}岁。现在的时间是{3}", name, week, age);
/
/
//转义字符使用
// "Hello World!"
Console.WriteLine (""Hello \n\t igkan \t \World!\"");
Console.WriteLine ("\");
Console.WriteLine ("Hello \n\tWorld!");
//如何保留整数位和小数位
double d = 12.36;
Console.WriteLine ("{0:0.0}", d);
//保留小数位
Console.WriteLine ("{0:f5}", d);
//百分比 p => percent
double d1 = 0.12555;
Console.WriteLine ("{0:p2}", d1);
Console.Write ("11111111111");
*/
/*
//输入
//从控制台输入的所有数据都是string类型
// string s = Console.ReadLine ();
// Console.WriteLine ("你刚才输入的是:{0}", s);
Console.WriteLine ("输入姓名:");
string name = Console.ReadLine ();
Console.WriteLine ("输入年龄:");
string age = Console.ReadLine ();
Console.WriteLine ("输入性别:");
string sex = Console.ReadLine ();
Console.WriteLine ("姓名:{0}\n年龄:{1}\n性别:{2}", name, age, sex);
*/
/*
//读取一个字符,返回一个int类型
Console.WriteLine ("请输入第一个字符:");
int cn1 = Console.Read ();
Console.ReadLine ();
Console.WriteLine (cn1);
Console.WriteLine ("请输入第二个字符:");
int cn2 = Console.Read ();
Console.ReadLine ();
Console.WriteLine (cn2);
*/
/*
//类型转换: 显示转换(强制转换) 隐式转换
//语句是程序执行的最小单位,以 ; 结束
// 1. 隐式转换 小范围能转换成大范围,大范围不能转换为小范围
// ! 编程需要的是0错误,不能使用隐式转换
//浮点型可以保存整型
int n1 = 1;
float f1 = 12.3f;
f1 = n1;
//long可以保存int
int n2 = 10;
long l2 = 100;
l2 = n2;
float f3 = 1.213f;
double d3 = 2.34;
d3 = f3;
//适合财务和货币的运算
//浮点类型在计算过程中会产生误差,但是decimal不会
//一般来说,不会判断浮点类型是否相等
//decimal d4 = 1.23m;
//有误差的例子如下:
double d = 1.23f;
Console.WriteLine (d);
// int 可以保存 char 类型
// 'a' 计算机存的是ascll码 n(int):4个字节 char:是2个字节
//int n = 'a';
float f4 = 1.2f;
float f5 = 2.4f / 1.2f;
Console.WriteLine (f4);
Console.WriteLine (f5);
if (f4 == f5) {
Console.WriteLine ("相等");
} else {
Console.WriteLine ("不相等");
}
// 2.显示转换 或者叫 强制转换(3种形式)
//(1)这种方法不在乎精度丢失,数值间类型的强制转换,下面这种方法并不适用于非数值间的强制转换
// ! int n8 = (int)"123";
float f6 = 1.23f;
double d6 = 2.34;
f6 = (float)d6;
Console.WriteLine (f6);
Console.WriteLine (d6);
//int 是不会对小数部分进行四舍五入的,精度丢失的部分一刀切
int n7 = 10;
float f7 = 1.7f;
n7 = (int)f7;
Console.WriteLine (n7);
// (2) Parse 专门给字符串使用的
string str1 = "10";
int strNum = int.Parse (str1);
Console.WriteLine (strNum + 10);
string str2 = "1.23";
float strNum2 = float.Parse (str2);
double strNum3 = double.Parse (str2);
Console.WriteLine (strNum2 + 0.1f);
Console.WriteLine (strNum3 + 0.1);
string str3 = "true";
// bool strBool = bool.Parse (str3);
// Console.WriteLine (strBool);
// (3) 使用Convert进行强制转换
// 当 Convert无法对给定数据进行转换,就会抛出异常,异常不算错误,而是计算机不知道该怎么办了
// int num = 97;
float num = 97.5f;
float fc = Convert.ToSingle (num);
double dc = Convert.ToDouble (num);
string sc = Convert.ToString (num);
char cc = Convert.ToChar (num);
// Console.WriteLine (cc);
*/
//第一种
// int k = 18;
// float j = (float)k;
// //第二种 注意:Parse转的是字符串类型的
// float u = k;
// //第三种
// float p = Convert.ToSingle (k);
//
// //string str= "18"; 转换成int
// string str = "18";
//
// //第一种
// int strD = Convert.ToInt32 (str);
// //第二种
// int n1 = int.Parse (str);
}
}
}
//using System;
//using System.Collections.Generic;
//using System.Linq;
//using System.Text;
//using System.Threading.Tasks;
//
//namespace ConsoleApplication1
//{
// class Program
// {
// /// <summary>
// /// 控制台动态输出时间小程序
// /// </summary>
// /// <param name="args"></param>
// static void Main (string[] args)
// {
// Console.Title = "控制台动态显示时间小程序";
// Console.WindowHeight = 3;//控制台高度
// Console.WindowWidth = 50;//控制台宽度
// while (true) {//一个死循环
// Console.WriteLine ("当前系统时间是:{0}", DateTime.Now);
// //当前系统时间
// System.Threading.Thread.Sleep (1000);
// //当前主线程sleep
// Console.Clear ();
// //清屏
// }
// }
// }
//}
class MainClass
{
public static void Main (string[] args)
{
/*
// 关系运算符 > >= <= < == !=
//1. 操作比较两个数的大小和相等关系
//2. 返回值: true or false
//3. 数值类型可以比较大小和相等
//4. 其他类型可以比较是否相等
// bool b1 = 5 > 3;
// Console.WriteLine (b1);
// bool b2 = 5 < 3;
// Console.WriteLine (b2);
// bool b3 = 5 >= 5;
// Console.WriteLine (b3);
// bool b4 = 5 != 5;
// Console.WriteLine (b4);
// string s = Console.ReadLine ();
// int sTr = int.Parse (s);
// switch (sTr) {
// case 1:
// Console.WriteLine ("Igkan");
// break;
//
// case 2:
// Console.WriteLine ("Hello");
// break;
// default:
// break;
// }
//练习: level < 5
// int level = 0;
// bool b = level < 5;
// Console.WriteLine (b);
//血量
// int HP = 100;
// bool b1 = HP > 0;
// Console.WriteLine (b1);
//身高 > 1.75
// double height = 1.78;
// bool x = height > 1.75;
// Console.WriteLine ("{0:f2}", x);
//字符串 "HelloKittty",不能用来比较大小
// string userName = "HelloKitty";
// bool b3 = userName != "HelloKitty";
// Console.WriteLine (b3);
//思考题: 18 <= aqe < 60;
// int aqe = 50;
// bool b = Convert.ToBoolean (aqe);
// Console.WriteLine (b);
// bool a = aqe >= 18 && aqe < 60;
// Console.WriteLine (a);
// 逻辑运算符 && || !
// 逻辑与:&& 逻辑或: || 逻辑非 !
// 操作:对 bool 值进行操作
// 返回值 :bool
// && : 逻辑与中的两个操作数
// 只要有一个是false,结果就是false
// 一假即假
// 并且
// bool b1 = true && true; // true
// bool b2 = true && false; // false
// bool b3 = false && true; // false
// bool b4 = false && false; // false
//
// 一个公司招聘
// 大于 18 岁,并且小于 60 岁
// 大于 18 && 小于 60
// int age = 16;
// bool b5 = age > 18 && age < 60;
// Console.WriteLine ("You {0} work in my company!", b5);
// 注册用户 账号: abc 密码 : 123
// 登录
// string userName = "abc";
// string password = "123";
//
// // 登录
// string u = "LLL";
// string p = "123";
//
// //用户名一致,并且密码一致
// bool b6 =
// userName == u && password == p;
//模特 身高大于1.80,并且体重小于60
// Console.WriteLine ("请输入你的身高:");
// string s = Console.ReadLine ();
// double height = Convert.ToDouble (s);
// Console.WriteLine ("请输入你的体重:");
// string k = Console.ReadLine ();
// double weight = Convert.ToDouble (k);
//// double height = 1.90;
//// double weight = 60;
// int age = 24;
// bool b7 = height > 1.8 && weight < 60 && age < 25;
// if (b7) {
// Console.WriteLine ("OK!");
// }
// //注册
// Console.WriteLine ("是否要注册,是的话请按Enter");
// Console.WriteLine ("请输入注册账号:");
// string registerAccount = Console.ReadLine ();
// Console.WriteLine ("请输入注册密码");
// string registerPassword = Console.ReadLine ();
//
// //登录
// Console.WriteLine ("请输入你的账号");
// string loginAccount = Console.ReadLine ();
// Console.WriteLine ("请输入你的密码");
// string loginPassword = Console.ReadLine ();
// bool verify =
// registerAccount == loginAccount && registerPassword == loginPassword;
// if (verify) {
// Console.WriteLine ("您输入的账号密码正确,可以登录");
// } else {
// Console.WriteLine ("你输入的账号密码错误,请退出");
// }
//逻辑或 || 或者 (两者选其一)有真即真
bool b8 = true || true; //true
bool b9 = true || false; //true
bool b10 = false || true; // true
bool b11 = false || false; //false
// 升级的条件:经验值 > 2000,或者冲1000元
int ex = 2100;
double money = 1000;
bool b12 = ex >= 2000 || money >= 1000;
//逻辑非 ! 反义
bool b13 = !true; // false
bool b14 = !false; // true
//年龄小于 18
int age = 18;
bool b15 = !(age < 18);
// 短路现象
*/
//分支语句: 根据条件,从多段代码中选一段执行
/*
// if
// 1. 一段代码,执行还是不执行
//if 关键字
//(bool值) 可以是bool常量,bool变量,关系表达式
//{代码} true 执行 false 不执行
// bool n = true;
// if (n) {
// Console.WriteLine ("执行");
// }
// 问路
// Console.WriteLine ("请输入问路人的性别:");
// string sex = Console.ReadLine ();
// if (sex == "女") {
// Console.WriteLine ("出门左转");
// } else if (sex == "男") {
// Console.WriteLine ("出门右转");
// } else {
// Console.WriteLine ("滚");
// }
// 两段代码,选择一段代码执行
// true 执行第一段代码
// false 执行第二段代码
// if (false) {
// Console.WriteLine ("第一段代码");
// } else {
// Console.WriteLine ("第二段代码");
// }
//例子
// Console.WriteLine ("回家途中遇到了:");
// string str = Console.ReadLine ();
// if (str == "卖西瓜") {
// Console.WriteLine ("买一个包子");
// } else {
// Console.WriteLine ("买一斤包子");
// }
//练习题
// Console.WriteLine ("输入一个年份:");
// string str = Console.ReadLine ();
// int strI = Convert.ToInt32 (str);
//
//第一种方法
// int a = strI % 400;
// int b = strI % 4;
// int c = strI % 100;
// if ((strI % 400) == 0) {
// Console.WriteLine ("{0}是闰年", strI);
// } else if ((strI % 4) == 0 && (strI % 100) != 0) {
// Console.WriteLine ("{0}是闰年", strI);
// } else {
// Console.WriteLine ("{0}不是闰年", strI);
// }
//第二种方法
// if ((strI % 400 == 0) || ((strI % 4 == 0) && (strI % 100 != 0))) {
// Console.WriteLine ("闰年");
// }
//第三种方法
// bool b1 = strI % 400 == 0;
// bool b2 = strI % 4 == 0;
// bool b3 = strI % 100 != 0;
// if (b1 || (b2 && b3)) {
// Console.WriteLine ("是闰年");
// } else {
// Console.WriteLine ("不是闰年");
// }
// 3.多段代码选 条件为true 的前面的一段执行
// 有n段代码至少有 n - 1 个条件(严谨的说法是 至少 至少 至少 至少 至少 至少 至少 至少 至少 至少 至少)
// 代码从上到下依次判断,只要有一个条件为true,
// 后面的条件不再判断
// if (true) {
// Console.WriteLine ("第一段代码");
// } else if (true) {
// Console.WriteLine ("第二段代码");
// } else if (true) {
// Console.WriteLine ("第三段代码");
// } else {
// Console.WriteLine ("第四段代码");
// }
//练习
//从控制台输入
// A 打印 优秀
// B 打印 良好
//C 打印 及格
// D 打印 不及格
// 输入其他 打印 输入不正确
// Console.WriteLine ("请输入一个字母:(A B C D)");
// string str = Console.ReadLine ();
//
// //第一种方法
//// if (str == "A") {
//// Console.WriteLine ("优秀 你棒棒的");
//// } else if (str == "B") {
//// Console.WriteLine ("良好 你不够棒");
//// } else if (str == "C") {
//// Console.WriteLine ("你刚好及格,真不要脸");
//// } else if (str == "D") {
//// Console.WriteLine ("不及格,垃圾");
//// } else {
//// Console.WriteLine ("亲,您的输入不正确");
//// }
////
// //第二种方法
// switch (str) {
// case "A":
// Console.WriteLine ("优秀,你棒棒的");
// break;
// case "B":
// Console.WriteLine ("良好");
// break;
// case "C":
// Console.WriteLine ("及格");
// break;
// case "D":
// Console.WriteLine ("不及格");
// break;
// default:
// Console.WriteLine ("您输入的不正确哦!");
// break;
// }
*/
// switch
// 多段代码 选一段执行
// (标记) 括号里面是标记:整型、字符串、字符、bool值
// case 后面的标记没有顺序,但不能重复
//整型可以作为标记
// int tag = 6;
// switch (tag) {
// case 1:
// Console.WriteLine ("第一段代码");
// break;
// case 2:
// Console.WriteLine ("第二段代码");
// break;
// case 3:
// Console.WriteLine ("第三段代码");
// break;
// case 4:
// Console.WriteLine ("第四段代码");
// break;
// case 5:
// Console.WriteLine ("第五段代码");
// break;
// default:
// Console.WriteLine ("第六段代码");
// break;
//
// }
//字符串可以作为标记
// string tagStr = "Longan";
// switch (tagStr) {
// case "Banana":
// Console.WriteLine ("你选择的是香蕉");
// break;
// case "Apple":
// Console.WriteLine ("获取的是苹果");
// break;
// case "Pear":
// Console.WriteLine ("你选择的是梨,一点都不好吃");
// break;
// case "Longan":
// Console.WriteLine ("大大的好吃!");
// break;
// default:
// break;
// }
//字符可以作为标记
// char c = 'a';
// switch (c) {
// case 'a':
// Console.WriteLine ("a");
// break;
// case 'b':
// Console.WriteLine ('b');
// break;
// default:
// break;
// }
// bool可以作为标记
// bool b = true;
// switch (b) {
// case true:
// Console.WriteLine ("true");
// break;
// case false:
// Console.WriteLine ("false");
// break;
// default:
// break;
// }
//float不能作为标记,浮点型是有误差的
// float a = 2.4f;
// switch (a) {
// case 2.4f:
// Console.WriteLine ("OK!");
// break;
// default:
// break;
// }
// case 后面没有语句的时候能够不适用 break
while (true) {
Console.WriteLine ("请输入正确的数字:(1-7)");
string str = Console.ReadLine ();
int s = Convert.ToInt32 (str);
switch (s) {
case 1:
Console.WriteLine ("星期一");
break;
case 2:
Console.WriteLine ("星期二");
break;
case 3:
Console.WriteLine ("星期三");
break;
case 4:
Console.WriteLine ("星期四");
break;
case 5:
Console.WriteLine ("星期五");
break;
case 6:
Console.WriteLine ("星期六");
break;
case 7:
Console.WriteLine ("星期日");
break;
default:
Console.WriteLine ("输入超出范围!");
break;
}
}
}
}