using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//namespace 所属于具体的类库
//using 引用类库
namespace Base02
{
//有且只有一个
class Program
{
//主方法 有且只有一个
static void Main(string[] args)
{
//+号
//拼接指定的数据类型是string
//+算法的 非字符串(string)数字
//()号 优先级高于+号
//自动数据类型的转换 讲数字转为string
//Console.WriteLine("两个数字相加的和为:"+1.5555555+1);
//Console.ReadKey(); //结果为拼接
//Console.WriteLine("两个数字相加的和:");
//Console.WriteLine(1+1); //结果为运算
//占位符
//Console.WriteLine("两个数相加的和为:{0}",1+1); 结果为运算
//Console.WriteLine("1:{0},2:{1},3:{2}",1,2,3); //输出结果为 1:1,2:2,3:3 {0} 下标从0开始
//Console.WriteLine("{1},{2},{3}", "",1,2,3); //输出123 {0} 下标0位必须用""代替
//10/3是整数 int
//Console.WriteLine(typeof(10.0 is double); //is的验证当前类型是否与系统原型相同 返回为true或false
//float f = 10.0f; //在所有小数点的位置默认用的是double类型 这也是double不加d的原因 与folat需要加f的原因
//Console.WriteLine(typeof(double,10.0)); //typeof用于获取系统原型对象的类型,也就是Type对象.
//Console.WriteLine(10.0/3); //结果3.3333333333333
//类型之间互换
//分为两种 自动与手动
//自动 原数据类型的取值范围小于目标数据类型的取值范围
//int类型自动转double类型
//int a = 10;
//double b = a;
//手动 原数据类型的取值范围不小于目标数据类型的取值范围
//double a = 10;
//int b = a; //a会报错 因为double的数据类型高于int数据类型
//int b = (int)a; //转换成功
//double a = 10;
//int d = a as int; //as 它只能用于自己定义类的时候 引用类型
//String s = "111";
//int a = s as int; //int 值类型 关键字
//Int32 a = s as Int32; //Int32 引用类型 引用类型与值类型的区别在于能不能new as考虑用于类的类型转换
//Int16 Int32 Int64的区别在于数值的大小 由小到大 一般来说我们用Int32就够了
//将任何类型转为string类型用tostring()就行了
//int a = Int32.Parse(Console.ReadLine()); ;
//string d = a.ToString();
//Console.WriteLine(d);
//Console.ReadKey();
//++ +1
//++前置 ++后置没区别 都是+1
//int i = 0;
//i++;
//Console.WriteLine(i);//1
//++i;
//Console.WriteLine(i);//1
//Console.ReadKey();
//+= 数字类型int
//int i = 0;
//i = i + 1;//i+1 从结果上来说没区别
//Console.WriteLine(i);//1
//Console.WriteLine(i+=1);//2 运算
//string s = "1";
//s = s + 1;
//Console.WriteLine(s);//11
//s += 1;
//Console.WriteLine(s);//111 拼接
//Console.ReadKey();
//关系运算符
//体现关系运算符 返回的数据类型是bool类型
//if(bool类型的判断)
//Console.WriteLine("请输入第一个数字:");
//int i = Int32.Parse(Console.ReadLine());
//Console.WriteLine("请输入第二个数字:");
//int j = Int32.Parse(Console.ReadLine());
//Console.WriteLine(i==j);
//逻辑运算符
//逻辑运算符 实际上是将多个关系运算符的结果 作为一组条件进行判断
//Console.WriteLine("请输入第一个数字:");
//int i = Int32.Parse(Console.ReadLine());
//Console.WriteLine("请输入第二个数字:");
//int j = Int32.Parse(Console.ReadLine());
//Console.WriteLine(i>0&&j>0);//返回bool类型
//逻辑与和短路与的区别 结果没区别
//与(&&)并且(所有条件必须成立) 或(||)或者(只需要一个条件成立)
//& 需要把所有的结果全部执行完毕后返回结果 && 只需要判断其中一个结果不符合则不计算剩余的结果
//&= if判断
//int i = 10;
//bool j = false;
//j &= i > 0;
//Console.WriteLine(j);
//int a = 10;
//Console.WriteLine(a > 0);
//Console.ReadKey();
//正则表达式
//Console.WriteLine(!(1>0));
//Console.ReadKey();
//三元运算符 ?: 替代 if-else 以后用三元运算符
//条件成立的时候 也就是true 输出 ? 后面的内容 false 则输出:后面的内容
//? if代码块 :else代码块 {}
//Console.WriteLine(1 > 0 ? "1>0" : "1<0");
//type 类型 反射 class clazz(java)
//Type t = typeof(int);//返回的是库+类
//Console.WriteLine(t);
//int i = 10;
//Type t = i.GetType();//得到具体的值
//Console.WriteLine(t);
//Console.ReadKey();
//Console.WriteLine("两个数字相加的和:"+1.555555+1);//拼接
//Console.ReadKey();
//Console.WriteLine("两个数字的和为:" + (1 + 1));
//Console.ReadKey();
//作业
//1.由用户输入一个4位数的数字,分别求出该数字的个位、十位、百位、千位
//Console.WriteLine("请输入一个4位数的数字:");
//int n = Int32.Parse(Console.ReadLine());
//int a = n % 10;
//int b = n / 10 % 10;
//int c = n / 100 % 10;
//int d = n / 1000;
//Console.WriteLine(a);
//Console.WriteLine(b);
//Console.WriteLine(c);
//Console.WriteLine(d);
//Console.ReadKey();
//2.定义一个变量记录硬盘的大小,如1GB,那么计算这个硬盘有多少MB。有多少KB。有多少Byte。(1024规则)
//int n = 1;
//Console.WriteLine(n*1024+"MB");
//Console.WriteLine(n*1024*1024+"KB");
//Console.WriteLine(n*1024*1024*1024+"Byte");
//Console.ReadKey();
//3.键盘输入1个数字,用算术运算符,取模2后,输出结果
//Console.WriteLine("请输入一个数字:");
//int n = Int32.Parse(Console.ReadLine());
//Console.WriteLine(n%2);
//Console.ReadKey();
//4.键盘接收1个到百位的数字,然后将数字倒过来,例如: 567 改变输出以后765
//Console.WriteLine("请输入一个1到100的数字:");
//int n = Int32.Parse(Console.ReadLine());
//int a = n % 10;
//int b = n / 10 % 10;
//int c = n / 100 % 10;
//Console.Write(a);
//Console.Write(b);
//Console.Write(c);
//Console.ReadKey();
//5.由用户输入圆的半径,求出圆的面积(3.14×(半`径×半径))
//Console.WriteLine("请输入圆的半径:");
//int n = Int32.Parse(Console.ReadLine()); //int
//Console.WriteLine(3.14 * (n * n));
//两种方法均可使用 按目前学的来看 先用第一种易懂
//double a = Double.Parse(Console.ReadLine()); //double
//double a = Convert.ToDouble(Console.ReadLine()); //double
//Console.WriteLine(3.14 * (a * a));
//Console.ReadKey();
}
}
}