C#函数的基础应用
函数之前的知识回顾 数据类型--变量常量--运算符表达式--语句(顺序,分支,循环)--数组--函数
程序里的函数:能完成一个相对独立功能的代码模块。 数学里的函数:高度抽象。 函数四要素:函数名,输入,输出,加工
函数定义:
[static] 返回类型 函数名(输入参数列表)
{ //函数体——加工 }
函数调用:
函数名(参数); ——适合于调用无返回值的函数
数据类型 变量 = 函数名(参数); ——适合于调用有返回值的函数。
今天要掌握的东西:
1.函数是个什么东西?
2.能体会到函数的好处:可重用,可分工,清晰易读
3.记住函数的四要素。
4.会定义简单的函数,会调用这个函数。
例题1:天气预报
static void M1ain(string[] args)
{ ShowHeader();
string city = ShuRu();
string jieguo = YunSuan(city);
Console.WriteLine("天气预报仅做参考:" + jieguo);
}
private static string YunSuan(string city)
{
//天气
string[] s = new string[] { "晴", "晴", "晴", "晴", "晴", "晴", "晴", "晴", "晴", "晴", "晴", "晴", "晴", "晴", "晴", "阴", "多云", "小雨", "中雨", "大雨", "暴雨", "雷阵雨", "小雪", "中雪", "大雪", "霾", "雾" }; Random rand = new Random();
int n = rand.Next(s.Length); //天气的下标. string tq = s[n];
//气温
int c = rand.Next(70);
c -= 30;
string jieguo = "明天的天气情况:" + city + ",天气:" + tq + ",气温:" + c;
return jieguo;
}
private static string ShuRu()
{ Console.Write("城市:");
string city = Console.ReadLine();
return city;
}
private static void ShowHeader()
{ Console.WriteLine("*************天气预报****************");
Console.WriteLine("********淄博气象台权威发布****************");
Console.WriteLine("********如果出现异常 ,纯属偶然****************");
Console.WriteLine("*****仅做个人测试与爱好使用,不要用作商业运营**********");
例题2.10个评委为选手打分。
int[] a = new int[10];
//亮分 ShuRu(a);
//排序 PaiXu(a);
//运算求平均 double avg = YunSuan(a);
//输出显示 ShuChu(a, avg);
}
private static void ShuChu(int[] a, double avg)
{ Console.WriteLine("去掉两个最高分:" + a[0] + "和" + a[1]);
Console.WriteLine("去掉两个最低分:" + a[a.Length - 1] + "和" + a[a.Length - 2]);
Console.WriteLine("该选手最终得分为:" + avg); }
private static double YunSuan(int[] a)
{
//求总分
int sum = 0;
for (int i = 2; i <= a.Length - 3; i++)
{
sum += a[i];
}
//求平均
double avg = (1.0 * sum) / (a.Length - 4);
return avg;
}
private static void PaiXu(int[] a)
{
for (int i = 1; i <= a.Length - 1; i++)
{
for (int j = 1; j <= a.Length - i; j++)
{
if (a[j] > a[j - 1])
{
int temp = a[j];
a[j] = a[j - 1];
a[j - 1] = temp;
}
}
}
}
private static void ShuRu(int[] a)
{
for (int i = 0; i < a.Length; i++)
{
Console.Write("请第" + (i + 1) + "号评委亮分:"); a[i] = Convert.ToInt32(Console.ReadLine());
}