namespace ConsoleApplication91024hanshu
{
class hanshua
{ //private只在当前class使用,需要初始化再使用!
//public公共的,可以在整个命名空间namespace使用,使用时 要初始化!
//static 的访问范围静态的,不能跨类即class!使用时不用初始化!
public void Hanshu(int i,int j,string s )
{
Console.WriteLine(i);
Console.WriteLine(j);
Console.WriteLine(s);
Console.WriteLine("这是第一个 函数操作。");
}
/// <summary>
/// 输入参数n,正整数,可以求出n的累加和! // 可以注解函数
/// </summary>
/// <param name="n"></param>
public void qiuhe(int n)
{
int sum=0;
for (int a=0;a<=n;a++)
{ sum+=a; }
Console.WriteLine ("累加求和结果"+sum);
}
public string fanhuizhi()
{
string s = "nihao ";
return s; // return"nihao"; // 直接赋值 ,返回值都是用return接收!
}
public int jiecheng(int m) //阶乘!
{
int a = 1;
for ( int b = 1; b <= m; b++)
{ a *= b; }
return a;
}
public void outzhi(int i, out int j,out string x,out double k) //可以返回多个值!
{ j = i+1; x = "hhh"; k = 1.3; }
public void tuzi (int i,out int j)
{
int a=i/2;
int c=1; //c代表兔子数
for (int b=1;b<=a;b++) //b代表2个月的个数
{ c*=2; }
j=c;
}
/* static void yang(int i, out int j)
{
int cun = i; int zongshu = 0;
for (int a = 1; a <= i; a++)
{
if(i==7)
{ zongshu=2;}
else
{ zongshu =(2*(zongshu+1));}
}
j=zogshu ;
}*/
public int dgqiuyang(int cun)
{
int sum = 0;
if (cun == 7)
{ return 2; } //return返回,不是sum=2赋值!
sum=2*(dgqiuyang(cun+1)+1);
// 在递归运算里return表示终结此函数,进而自动逆向运算,得出值!
return sum;
}
static void Main(string[] args)
{
hanshua hs = new hanshua(); //hanshua代表类class,public函数引用须 初始化 它所在的class,
hs.Hanshu(3,5,"hello");
hs.qiuhe(10);// 此时表示n=10;
//如果qiuhe是 static 函数,就可以直接使用!写成:qiuhe(10);
string s= hs.fanhuizhi();
int b= hs.jiecheng(5);
int j = 0; //要创建变量j,否则没法输出!
string x = "";
double k = 0;
// hs.outzhi(3, out j, out x, out k);//顺序要按照函数里的顺序写!
hs.tuzi(0, out j);
Console.Write(b+" "+j);
Console.ReadLine();
//////////////////////应用
namespace ConsoleApplication91026huigu
{
class Program
{
static void dayin01()
{ Console.WriteLine("01,hello"); }
#region 解二次方程 //要单独一行才起作用
/// <summary>
///
/// </summary>
/// <param name="a"></param>
/// <param name="b"></param>
/// <param name="c"></param>
/// <param name="geng1"></param>
/// <param name="geng2"></param>
/// <returns></returns>
public string jiefangcheng02(double a, double b, double c, out double geng1,out double geng2)
{ /**/// 求解a*x*x+bx+c=0 //b*b-4ac
geng2 = 0; geng1 = 0;
if (a == 0)
{ return "此时不是一元二次方程"; }
else if (b * b < 4 * a * c)
{ return"无解"; }
else if (b * b == 4 * a * c)
{ geng2=geng1= -b / (2 * a); //可以连等,也可以分开写。
return "两个相同实根"; //return 只能接收一个量!
}
else
{
geng1 = (-b + Math.Sqrt(b * b - 4 * a * c))/2*a;
geng2=(-b - Math.Sqrt(b * b - 4 * a * c))/2*a ;
return "两个不同实根";
}
}
#endregion
#region 判断身高体重是不是标准
/// <summary>
///
/// </summary>
/// <param name="sex"></param>
/// <param name="weight"></param>
/// <param name="high"></param>
/// <returns></returns>
public string tizhong(string sex, double weight, double high)
{
if (sex=="男" )
{
double bzweight = high - 100;
double cha = weight - bzweight; //此处要分清e.f大小值然后判断
if (cha > 3)
{ //Console.Write("不好意思,你有点胖了,该减肥了!"); return "超标"; } else if (cha < -3)
{ // Console.Write("不好意思,你需要补充营养!"); return "偏瘦"; }
else
{ // Console.Write("您的身材很标准,继续保持!"); return "标准"; }
}
else if (sex == "女")
{
double bzweight = high - 110;
double cha = weight - bzweight;
if (cha > 3)
{ //Console.Write("不好意思,你有点胖了,该减肥了!");
return "超标"; }
else if (cha < -3)
{ // Console.Write("不好意思,你需要补充营养!");
return "偏瘦"; }
else
{ // Console.Write("您的身材很标准,继续保持!");
return "标准"; }
}
else
{ //Console.WriteLine("不知道哪错了,可能是你还没有长大!"); return "错误"; }
}
#endregion
#region==生成四位验证码的方法==
/// <summary>
///随机生成4位验证码,并输入比对是否输入正确
/// </summary>
/// <returns></returns>
public string yanzhengma()
{
string s = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_";
Random r = new Random();
int zi1 = r.Next(63);
int zi2 = r.Next(63);
int zi3 = r.Next(63);
int zi4 = r.Next(63);
string a = s.Substring(zi1, 1);
string b = s.Substring(zi2, 1);
string c = s.Substring(zi3, 1);
string d = s.Substring(zi4, 1);
string suiji = a + b + c + d;
//Console.WriteLine(suiji);
return suiji;
}
#endregion
#region==判断邮箱是否正确==
/// <summary>
///判断邮箱格式是否输入正确
/// </summary>
/// <param name="email"></param>
/// <returns></returns>
public bool youxiang(string semail)
{
string bidui = "abcdefghijklmnopqrstuvwxyz1234567890_.@";
int sant = 0;
int sdian = 0;
int zhengque = 0;
for (int i = 0; i < semail.Length; i++)
{
string sc = semail.Substring(i, 1);
bool b = bidui.Contains(sc);
if (b)
{
if (sc == "@")
{ sant++; }
if (sc == ".")
{ sdian++; }
}
else
{ // Console.WriteLine("您的邮箱有特殊字符,请检查输入!");
return false;
zhengque++;
}
}
if (sant == 1 && sdian == 1 && zhengque == 0)
{
if (semail.Contains("@.") || semail.IndexOf("@") > semail.IndexOf("."))
{
// Console.WriteLine("@和.之间需要有邮箱地址代表字符,并且@必须在.前面");
return false;
}
else
{
if (semail.EndsWith(".com") || semail.EndsWith(".cn"))
{ //Console.WriteLine("输入正确");
return true;
}
else
{
// Console.WriteLine("邮箱必须以.com或者.cn结尾");
return false;
}
}
}
else
{ //Console.WriteLine("注意邮箱中只能出现一个@和一个.");
return false;
}
}
#endregion
static void Main(string[] args)
{
/* dayin(); //直接引用函数!
Console.ReadLine();//此时 可以打印 01,hello */
//解一元二次方程!
/* Console.Write("输入a:");
double a = double.Parse(Console.ReadLine());
Console.Write("输入b:");
double b = double.Parse(Console.ReadLine());
Console.Write("输入c:");
double c = double.Parse(Console.ReadLine());
double gen1; double geng; //要创建相应类型的变量接收,可以不是创建函数中的变量名!
Program qiujie = new Program();
qiujie.jiefangcheng02(a, b, c, out gen1, out geng);
Console.WriteLine(" 02, 1 :"+gen1+" 2 :"+geng);
Console.ReadLine(); */
/* //判断是不是标准体重
Console.WriteLine("sex:");
string a=Console.ReadLine ();
Console.WriteLine("high:");
double b=Convert.ToDouble( Console.ReadLine ());
Console.WriteLine("weight:");
double c=double.Parse (Console.ReadLine ());
//下面引用函数 ,前面是在获取函数所需要的必要参数!
Program shengao=new Program ();
string d = shengao .tizhong(a,b,c);
Console.WriteLine(d);
Console.ReadLine(); */
//这是验证码调用部分
/* Program pg = new Program();
string suiji = pg.yanzhengma();
Console.WriteLine(suiji);
while (true)
{
string shuru = Console.ReadLine();
shuru = shuru.ToUpper();
suiji = suiji.ToUpper();
if (shuru == suiji)
{
Console.Write("输入正确");
break;
}
else
{
Console.Write("重新输入");
Console.Clear(); //清空 控制台界面 的程序代码!
suiji = pg.yanzhengma();
Console.WriteLine(suiji);
}
}
Console.ReadLine(); */
//邮箱函数调用部分,判断邮箱格式 对错!
Console.WriteLine("请输入你的邮箱:");
string semail = Console.ReadLine();
semail = semail.ToLower();
Program pg = new Program();
bool b = pg.youxiang(semail);
Console.WriteLine(b);
Console.ReadLine();