C#基础系列第一篇
<div id="cnblogs_post_body">前言: 完全是我在学习过程中记录的笔记,只不过分享一下让很多刚开始学习.net编程的人能够很快的学会C#语言[*]托管代码,非托管代码
(1) 凡是由.net生成的代码,需要CLR运行的代码均为托管代码
(2) 不由CLR进行维护的执行代码为非托管代码
[*]break和Continue的区别
(1)举例说明:
static void Main(string[] args)
{
for (int i = 0; i < 10; i++)
{
if (i == 2)
{
//break;
continue;
}
}
}
注:在这里可以使用调试的功能看一下结构
[*]交换变量的做法
int num1 = 5;
int num2 = 10;
(1)第一种写法(建议使用这种最好)
int temp = num1;
num1 = num2;
num2 = temp;
(2)第二种写法
num1 = num1 + num2;
num2 = num1 - num2;
num1 = num1 - num2;
(3)第三种写法
num1 = num1 | num2;
num2 = num1 ^ num2;
num1 = num1 ^ num2;
(4)第四种写法(只有基于堆栈的编译起中可以执行)
num1 = num2 + (num2 = num1) * 0;
(5)第五种写法(使用这种写法的时候必须要保证两个变量都不能为0)
num1 = num1 * num2;
num2 = num1 / num2;
num1 = num1 / num2;
Console.WriteLine("num1={0},num2={1}", num1, num2);
[*]方法(方法就是复用模块)
(1) 没有参数和返回值的方法
语法: void 方法的名字()
{
//方法体
}
public static void Func()
{
Console.WriteLine("我要做网站了");
}
(2)如果是Main方法调用该方法,现在要在方法前加上static(标有static(静态)的方法只能直接调用)
(3)带有参数的方法
语法:public static void 方法名(方法类型 参数的变量名)
{
//方法体
}
public static void FuncReplace(int money)
{
if (money >= 1000)
{
Console.WriteLine("可选择的网站");
}
else if (money >= 500)
{
Console.WriteLine("简单的网站");
}
else
{
Console.WriteLine("资金短缺");
}
}
(4)带有参数具有返回值的方法
语法: static 返回值类型 方法名(参数类型 参数)
{
//
}
public static int GetNum(int num)
{
return num * 2;
}
执行方法
int res= GetNum(3);
Console.WriteLine(res);
(5)实现Max方法与Min方法
class Program
{
static void Main(string[] args)
{
int num1 = 12;
int num2 = 34;
int max = Max(num1, num2);
int min = Min(num1, num2);
Console.WriteLine("较大的数字是:{0}",max);
Console.WriteLine("较小的数字是:{0}",min);
Console.ReadKey();
}
public static int Max(int n1, int n2)
{
/*
if (n1 > n2)
{
return n1;
}
else
{
return n2;
}
*/
int num = 0;
if (n1 > n2)
{
num = n1;
}
else
{
num = n2;
}
return num;
}
public static int Min(int n1, int n2)
{
return n1 > n2 ? n2 : n1;//三元表达式
}
}
(6)求Min和max之间的奇数的和
class Program
{
static void Main(string[] args)
{
int res = SumOdd(3, 7);
Console.WriteLine(res);
Console.ReadKey();
}
public static int SumOdd(int min, int max)
{
int res = 0;
for (int i= min; i <= max; i++)
{
if (i % 2 != 0)
{
res += i;
}
}
return res;
}
}
(7)求最大数
class Program
{
static void Main(string[] args)
{
int[] nums = { 12, 34, 54, 65, 76,454 };
int res = GetNUum(nums);
Console.WriteLine(res);
Console.ReadKey();
}
public static int GetNUum(int[] nums)
{
int max = 0;
for (int i = 0; i < nums.Length; i++)
{
if (nums > max)
{
max = nums;
}
}
return max;
//return nums.Max();
}
}
(8)写三个方法,分别完成
1、不带参数,完成任意整数的输入,如果出现错误提示,并继续输入,返回整数
int InputNum_1()
2、带一个参数,完成0到该数范围的整数输入
int InPutNum_2(int max)
3、带两个参数,完成这两个数字之间的整数输入
int InPutNum_3(int min, int max)
<div class="cnblogs_Highlighter">class Program{static void Main(string[] args){Console.Write("请输入一个数字:");int num = GetInputNum(9,17);Console.WriteLine(num * 2);Console.ReadKey();}/// <summary>/// 完成任意int范围的数字的输入并返回/// </summary>/// <returns></returns>public static int GetInputNum(){return GetInputNum(int.MinValue, int.MaxValue);}/// <summary>/// 完成int类型数据的输入,并返回,要求输入的数字在0到给定的数字之间/// </summary>/// <param name="max">给定的数字的上限</param>/// <returns></returns>public static int GetInputNum(int max){return GetInputNum(0, max);}/// <summary>/// 完成int数字的输入,要求在给定范围之间/// </summary>/// <param name="min">给定范围的下线</param>/// <param name="max">给定范围的上线</param>/// <returns></returns>public static int GetInputNum(int min,int max){string str = Console.ReadLine();int num;while (true){try{num = Convert.ToInt32(str);if (num > min && num < max){break;}Console.Write("输入数字不再{0}到{1}之间,请重新输入", min,max);str = Console.ReadLine();}catch{Console.Write("输入有误,请重新输入");str = Console.ReadLine();}}return num;}}
页:
[1]