从0开始学习C#第二天
今天有点小忙,一会儿抽出时间来学习。先要去见个客户,回来写个方案,下面继续学习。
今天的学习目标
zy10
1、理解掌握数据类型的隐式转换。
2、理解掌握数据类型的显式转换。
3、掌握字符串和数值间的转换方法。
short a=22222; //short[-32768--+32767] int 型包含short unshort[0--+65535]
int n; //short 占2个字节16位 int 型4个字节32位
n = a; //隐式转换 short型可以转换成int
Console.WriteLine("n={0}",a);
zy11
1、通过一个程序体验一下流程控制。(不需要完全理解这个程序)
2、理解算法的概念。
3、理解程序的顺序结构。
//基姆拉尔森公式的BUG,每年的1月,2月被让为13月和14月 int y, m, d; Console.WriteLine("请输入年月日"); y = Convert.ToInt32(Console.ReadLine()); m = Convert.ToInt32(Console.ReadLine()); d = Convert.ToInt32(Console.ReadLine()); if (m == 1 || m == 2) { m += 12; --y; } int week = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400 + 1) % 7; string weekstring = ""; switch (week) { case 0: weekstring = "星期天"; break; case 1: weekstring = "星期一"; break; case 2: weekstring = "星期二"; break; case 3: weekstring = "星期三"; break; case 4: weekstring = "星期四"; break; case 5: weekstring = "星期五"; break; case 6: weekstring = "星期六"; break; } Console.WriteLine(weekstring); }
//已知三角形的三条边a,b,c 求面积 //海伦公式 double a, b, c, p,s; Console.WriteLine("三角形的三条边"); a = Convert.ToDouble(Console.ReadLine()); b = Convert.ToDouble(Console.ReadLine()); c = Convert.ToDouble(Console.ReadLine()); p = (a + b + c) / 2; s = Math.Sqrt(p*(p-a)*(p-b)*(p-c)); Console.WriteLine("三角形的面积为:{0}",s);
zy12
1、认识关系运算符,并理解掌握逻辑表达式。
2、认识三种逻辑运算符&& (且) ||(或) !(非)。
3、总结多种运算符的优先级。
4、掌握布尔变量的定义和使用。
//布尔值运算 bool isFFFF; isFFFF = (4!=0); Console.WriteLine(isFFFF); isFFFF = false; Console.WriteLine(isFFFF);
zy13
1、认识选择结构,掌握最常用的if else选择流程控制的程序编写方法。
2、掌握单分支if选择流程控制的程序编写方法。
3、掌握多分支if else if else ……选择流程控制的程序编写方法。
4、掌握嵌套选择结构流程控制的程序编写方法。
5、能够会用流程图设计选择结构。
//求分支函数的值 double a; a = Convert.ToDouble(Console.ReadLine()); if (a > 0) { a++; } else { if (a == 0) { a = 0; } else { a--; } } Console.WriteLine(a);
zy14
1、掌握多分支选择结构switch语句编程方法。
2、掌握switch语句编程的遍历过程。
3、掌握条件表达式?:选择结构。
4、通过深化练习,继续跟踪变量的变化过程。
//计算哪年的年月日是当年的第几天,原理:先计算当年的剩余天数,然后用365-剩余的天数 int y, m, d; Console.WriteLine("请输入年月日"); y = Convert.ToInt32(Console.ReadLine()); m = Convert.ToInt32(Console.ReadLine()); d = Convert.ToInt32(Console.ReadLine()); int total = 365;//平年 if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) //total = (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) ? (total - 29) : (total - 28);条件选择也一样 { total = 366; } switch (m) { case 1: total -= 31; goto case 2; case 2: if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) { total -= 29; } else { total -= 28; } goto case 3; case 3: total -= 31;goto case 4; case 4: total -= 30;goto case 5; case 5: total -= 31;goto case 6; case 6: total -= 30;goto case 7; case 7: total -= 31;goto case 8; case 8: total -= 31;goto case 9; case 9: total -= 30;goto case 10; case 10: total -= 31;goto case 11; case 11: total -= 30; goto case 12; case 12: total -= 31; break; } Console.WriteLine("{0}年{1}月{2}日是第{3}天", y, m, d, total+d);
zy15
1、掌握循环结构的算法,并理解循环结构中的变量变化过程。
2、掌握while循环语句的编程过程。
3、理解什么是死循环。
//计算1+100; double sum; int i = 1; sum = 0; while (i <= 100) { sum += i; i++; } Console.WriteLine(sum);
zy16
1、掌握do-while循环语句的编程过程。并知道do-while和while的区别。
2、掌握for循环语句的编程过程。
3、掌握break语句和continue语句的用法。并知两者用法上的区别。
4、通过一个程序练习,学习掌握循环嵌套。
//求1+2+3+...i<2013 int i = 0; int sum=0; do { i++; sum =sum+i; } while (sum< 2005); Console.WriteLine(i);
zy17
1、掌握枚举类型的定义和使用。
2、掌握结构体的定义和使用。
enum WeekDays { Sunday, Monday,Tuesday,Wednesday,Thuresday,Friday,Saturday }; namespace first_ { class first { static void Main(string[] args) { //用for 语句的阶层n!=1!+2!+3!....N! //百元买百鸡 每只公鸡5,每只母鸡3,3只小鸡1元。问100元买100只鸡,几个公,几只母,几只小? //练习一下勾股定理:a*a+b*b=c*c //enum枚举 在类的外面,或者在函数的外面定义 WeekDays today; today = WeekDays.Saturday; if (today == WeekDays.Saturday || today == WeekDays.Sunday) { Console.WriteLine("I love weekday"); } } } }
//enum枚举 在类的外面,或者在函数的外面定义 WeekDays today; today = (WeekDays)3; Console.WriteLine(today); WeekDays today1; today1 = WeekDays.Friday; Console.WriteLine((int)today1); //用for 语句来做一下枚举类型的循环 可以参与运算 WeekDays today2; for (today2 = WeekDays.Sunday; today2 <= WeekDays.Saturday; today2++) { Console.WriteLine(today2); }
struct student {//结构体 public int number; public string name; public string sex; } namespace first_ { class first { static void Main(string[] args) { student root; root.number = 001; root.name = "root"; root.sex = "男"; student pro; pro.number = 002; pro.name = "pro"; pro.sex = "女"; Console.WriteLine("姓名:" + root.name); Console.WriteLine("性别:" + root.sex); Console.WriteLine("姓名:" + pro.name); Console.WriteLine("性别:" + pro.sex); } } }
zy18
1、掌握一维数组的定义和使用。
2、掌握Length属性的用法。
3、掌握foreach循环语句在数组中的使用。
//一维数组 int []scors = { 123, 111, 134, 123, 111 }; int i = 0; int sum1 = 0; for (i = 0; i < scors.Length; i++) { Console.WriteLine(scors[i]); sum1 += scors[i]; } Console.WriteLine(sum1);
//一维数组foreach 的使用 string[] fridname = { "1","2","3","4", "5" }; foreach (string name in fridname) { Console.WriteLine(name); }
zy19
1、掌握二维数组的定义和使用,由此推到多维数组。
2、掌握二维数组的for循环及foreach循环。
3、掌握可变数组的定义和使用。
4、掌握foreach循环语句在可变数组中的使用。
//多维数组 int [,]Matrix=new int[3,3]{{1,2,3},{4,5,6},{7,8,9}}; int sum = 0; for (int i=0;i<3;i++) { for (int j=0;j<3;j++) { Console.WriteLine(Matrix[i,j]+""); sum+=Matrix[i,j]; } } Console.WriteLine("sum={0}",sum);
//多维数组foreach int [,]Matrix=new int[3,3]{{1,2,3},{4,5,6},{7,8,9}}; int sum = 0; foreach (int nmuber in Matrix) { sum += nmuber; Console.WriteLine(nmuber); } Console.WriteLine("sum={0}", sum);
//可变数组 int[][] aArray = new int[2][]; int[][] aArray = new int[2][]{new int [3]{1,2,3},new int [4]{4,5,6,7}}; aArray[0]=new int [3]{1,2,3}; aArray[1] = new int[4] { 4, 5, 6 ,7}; foreach (int element in aArray[0]) { Console.Write(element); } foreach (int element in aArray[1]) { Console.Write(element); }
zy20
1、理解函数的概念,并知道使用函数的好处。
2、掌握如何定义和使用函数,并知道函数是如何运行的。
3、掌握返回语句return的用法。
static string Weekdata(int y, int m, int d) { if (m==1||m==2) { m += 12; y--; } int week = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400 + 1) % 7; string weekstring = ""; switch (week) { case 0: weekstring = "星期天"; break; case 1: weekstring = "星期一"; break; case 2: weekstring = "星期二"; break; case 3: weekstring = "星期三"; break; case 4: weekstring = "星期四"; break; case 5: weekstring = "星期五"; break; case 6: weekstring = "星期六"; break; } return weekstring; //返回结果 } static void Main(string[] args) { string weekday = Weekdata(2013,10,29); Console.WriteLine(weekday); }