標籤:
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());
}
C#函數的基礎應用