您的位置:首页 > 其它

3.13课·········函数——传值

2016-03-15 08:18 309 查看
函数:能够独立完成某项功能的模块。

函数四要素:输入、输出、函数体、函数名

函数定义:
(static/public) 返回类型 函数名(参数类型 参数名,参数类型 参数名)
{
函数体
}

函数的调用:
返回变量类型 变量名 = 函数(实参值)

传值:四种方式
1.没有返回值,没有输入值
2.没有返回值,有输入值
3.有返回值,没有输入值
4.有返回值,有输入值

函数是写在class类里面,main函数上面,也可新建一个类,写入函数,只要namespace相同,就可调用class里面的函数

//传值
//函数的分类
//1.没有返回值,没有输入值
//public void Hanshu()
//{

//}
//2.没有返回值,有输入值
//public void Hanshu(int a)
//{

//}
//3.有返回值,没有输入值
//public int/double Hanshu()
//{
//    return 变量名;
//}
//4.有返回值,有输入值
//public int/string Hanshu(int a /string a)
//{
//    return 变量名;
//}


/// <summary>
/// 累加求和方法1,没有返回值,没有输入值
/// </summary>
public void Leijia1()
{
Console.Write("请输入一个正整数");
int a = int.Parse(Console.ReadLine());
int sum = 0;
for (int i = 1; i <= a; i++)
{
sum += i;
}
Console.WriteLine(sum);
}
/// <summary>
/// 累加求和方法2,没有返回值,有输入值
/// </summary>
/// <param name="a"></param>
public void Leijia2(int a)
{
int sum = 0;
for (int i = 1; i <= a; i++)
{
sum += i;
}
Console.WriteLine(sum);
}

/// <summary>
/// 累加求和方法3,有返回值,没有输入值
/// </summary>
/// <returns></returns>

public int Leijia3()
{
Console.Write("请输入一个正整数");
int a = int.Parse(Console.ReadLine());
int sum = 0;
for (int i = 1; i <= a; i++)
{
sum += i;
}
return sum;
}
/// <summary>
/// 累加求和方法4,有返回值,有输入值
/// </summary>
/// <param name="a"></param>
/// <returns></returns>

public int Leijia4(int a)
{
int sum = 0;
for (int i = 1; i <= a; i++)
{
sum += i;
}
return sum;
}

static void Main(string[] args)
{
Program h = new Program();//初始化
h.Leijia1();//没返回,没输出//输入5,回车,得到15
h.Leijia2(5);//没返回,有输出//直接得到15
int sum = h.Leijia3();//有返回值,没输出值//定义与返回值相同数据类型的变量来接收返回值//先执行完函数这个方法,再赋值,再打印
Console.WriteLine(sum);
int sum1 = h.Leijia4(6);//有返回值,有输出值//启动后直接显示21
Console.WriteLine(sum1);

Console.ReadLine();


求n的阶乘函数:

/// <summary>
/// 阶乘,有返回值,没有输入值
/// </summary>
/// <returns></returns>
public int JieCheng()
{
Console.Write("请输入一个正整数:");
int a = int.Parse(Console.ReadLine());
int jie = 1;
for (int i = 1; i < a; i++)
{
jie *= i;
}
return jie;
}


求1!+2!+3!+······n!函数:

/// <summary>
/// 求1!~n!之和,有返回值,有输入值
/// </summary>
/// <param name="a"></param>
/// <returns></returns>
public int Jiechengqiuhe(int a)
{
int sum = 0, s = 1;
for (int i = 1; i <= a; i++)
{
s *= i;
sum += s;
}
return sum;
}
static void Main(string[] args)
{
Hanshu s = new Hanshu();
int sum = s.Jiechengqiuhe(6);
Console.WriteLine(sum);


求总分,最高分,最低分,平均分

/// <summary>
/// 求总分,最高分,最低分,平均分
/// </summary>
public void Pingjunfen()
{
Console.Write("请输入班级人数n=");
int n = int.Parse(Console.ReadLine());
double[] shuzu = new double
;
for (int i = 0; i < n; i++)
{
Console.Write("请输入第" + (i + 1) + "个同学的成绩:");
double d = double.Parse(Console.ReadLine());
shuzu[i] = d;
}
double zhong;
for (int i = 0; i < n; i++)
{
for (int j = i + 1; j < n; j++)
{
if (shuzu[i] > shuzu[j])
{
zhong = shuzu[i];
shuzu[i] = shuzu[j];
shuzu[j] = zhong;
}
}
}
double sum = 0;
for (int i = 0; i < n; i++)
{
sum += shuzu[i];
}
Console.WriteLine("总分是" + sum);
Console.WriteLine("最低分是" + shuzu[0]);
Console.WriteLine("最高分是" + shuzu[n - 1]);
Console.WriteLine("平均分是" + sum / n);

}


判断日期格式是否正确,若不正确,请重新输入的函数:

/// <summary>
/// 判断日期格式是否正确,若不正确,请重新输入
/// </summary>
public void  Riqigeshi()
{
Console.Write("请输入年份:");
for (; ; )
{
int y = int.Parse(Console.ReadLine());
if (y >= 0 && y <= 9999)
{
Console.Write("请输入月份:");
int m = int.Parse(Console.ReadLine());
for (; ; )
{
if (m >= 1 && m <= 12)
{
Console.Write("请输入日期:");
for (; ; )
{
int d = int.Parse(Console.ReadLine());
if (d >= 1 && d <= 31)
{
if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12)
{
Console.WriteLine("输入正确!您输入的日期是" + y + "年" + m + "月" + d + "日.");
break;
}

else if (m == 4 || m == 6 || m == 9 || m == 11)
{
if (d <= 30)
{
Console.WriteLine("输入正确!您输入的日期是" + y + "年" + m + "月" + d + "日.");
break;
}
else
{
Console.WriteLine("您输入的日期格式错误,请重新输入:");
}
}
else
{
if (y % 400 == 0 || y % 4 == 0 && y % 100 != 0)
{
if (d <= 29)
{
Console.WriteLine("输入正确!您输入的日期是" + y + "年" + m + "月" + d + "日.");
break;
}
else
{
Console.WriteLine("您输入的日期格式错误,请重新输入:");
}
}
else
{
if (d <= 28)
{
Console.WriteLine("输入正确!您输入的日期是" + y + "年" + m + "月" + d + "日.");
break;
}
else
{
Console.WriteLine("您输入的日期格式错误,请重新输入:");
}
}
}
}
else
{
Console.WriteLine("您输入的日期格式错误,请重新输入:");
}
}
break;
}
else
{
Console.WriteLine("您输入的月份格式错误,请重新输入:");
}
}
break;
}
else
{
Console.WriteLine("您输入的年份格式错误,请重新输入:");
}
}

}


冒泡排序

/// <summary>
/// 冒泡排序
/// </summary>
/// <param name="a"></param>
public void  Paixu(int a)
{
int[] shuzu = new int[a];
for (int i = 0; i < a;i++ )
{
Console.Write("请输入第"+(i+1)+"个数");
shuzu[i] = int.Parse(Console.ReadLine());
}
int zhong;
for (int i = 0; i < a-1; i++)
{
for (int j = i + 1; j < a; j++)
{
if (shuzu[i] < shuzu[j])
{
zhong = shuzu[i];
shuzu[i] = shuzu[j];
shuzu[j] = zhong;
}
}
}
foreach (int n in shuzu)//遍历数组
{
Console.Write(n + " ");
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: