函数:

数据类型--变量常量--运算符表达式--语句(顺序,分支,循环)--数组--函数

程序里的函数:能完成一个相对独立功的代码块。

数学里的函数:高度抽象。

函数四要素:函数名,输入,输出,加工

函数定义:

[static] 返回类型 函数名(输入参数列表)

{

//函数体——加工

}

函数调用:

函数名(参数); ——适合于调用无返回值的函数

数据类型 变量 = 函数名(参数); ——适合于调用有返回值的函数。

今天要掌握的东西:

1.函数是个什么东西?

2.能体会到函数的好处:可重用,可分工,清晰易读

3.记住函数的四要素。

4.会定义简单的函数,会调用这个函数。

例:函数

class Program         //函数多于是加上了class ,找分析每块函数别找错地方

{

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("*****仅做个人测试与爱好使用,不要用作商业运营**********");

}

}

例:青歌赛打分

class Class1

{

static void Main(string[] args)

{

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# 7 函数 青歌赛打分 天气预报的更多相关文章

  1. foreach 循环遍历 以及函数的应用

    foreach( 对集合每个元素的引用 in 集合 ){ } 举例: int[] a = new int[5]{1,2,3,4,5};foreach( int b in a ){ //b就是a中的每个 ...

  2. foreach使用和函数

    2016-04-25 一.foreach( 对集合每个元素的引用 in 集合 ) { } int[] a = new int[5]{1,2,3,4,5}; foreach( int b in a ) ...

  3. 20160418 while,switch,do..while的使用

    9 一.While循环 示例:求100以内所有数的和 Int i=1;//初始条件 Int sum=0; While(i<=100)//循环条件 { Sum+=i;//循环体 i++;//状态改 ...

  4. C#。总结

    数据类型--变量与常量--运算符与表达式--语句(if,for)--数组--函数--结构体一.数据类型: (一)内建类型 整型(int short long byte uint ushort ulon ...

  5. C# 10 总复习

    数据类型--变量与常量--运算符与表达式--语句(if,for)--数组--函数--结构体 一.数据类型: (一)内建类型 整型(int short long byte uint ushort ulo ...

  6. C#语言小结

    数据类型--变量与常量--运算符与表达式--语句(if,for)--数组--函数--结构体 一.数据类型:(一)内建类型整型(int short long byte uint ushort ulong ...

  7. C#阶段小结

    一.数据类型: (一)内建类型: 整型(int ,short, long ,byte ,uint ,ushort, ulong ,sbyte): 浮点型(double float decimal): ...

  8. C#整理5——break与continue.及数组

    一.break与continue.这两个关键字一般放在循环的花括号里面使用.break——结束整个循环.continue——结束本次循环,进入下次循环. break的案例: using System; ...

  9. C# 5 break continue 球员成绩 彩票 选班长

        二.新课: 1.break与continue. 这两个关键字一般放在循环的花括号里面使用. break--结束整个循环. continue--结束本次循环,进入下次循环. break的案例: ...

随机推荐

  1. sql 中的时间处理问题

    select GETDATE() as '当前日期',DateName(year,GetDate()) as '年',DateName(month,GetDate()) as '月',DateName ...

  2. Entity Framework 6 Code First创建

    基本上我是DB先设计好的,所以就按现存在的table去写程式. 1.Web.config里配置Db连接字串,Connection String Name为DefaultConnection <c ...

  3. A - Next_permutation

    首先介绍一下next_permutation函数的用途! 按照STL文档的描述,next_permutation函数将按字母表顺序生成给定序列的下一个较大的排列,直到整个序列为降序为止. prev_p ...

  4. Android的消息机制

    一.简介 ①.我们不能在子线程中去访问UI空控件,这是时候只能通过Handler将更新UI的操作放到主线程中去执行 ②.Handler的组成:messageQueue和Looper的支持 ③.Mess ...

  5. java学习一目了然——IO

    java学习一目了然--IO IO是java学习当中很重要的一部分.IO流实现数据的上传下载,即读写数据,包括输入和输出流,输入流指的是将数据以字符或字节形式从外部媒介比如文件.数据库等读取到内存中所 ...

  6. FFMPEG图片转视频

    1.分离视频音频流 ffmpeg -i input_file -vcodec copy -an output_file_video //分离视频流 ffmpeg -i input_file -acod ...

  7. SQL Server 中可以被锁住的 12 种资源

    第1种: DB 整个数据库 第2种: file 数据库文件 第3种: table 第4种: hobt(堆)BTree(B树) 第5种: extent 一个区(8个8KB页面) 第6种: page 数据 ...

  8. Nginx 教程的连载计划

    下面以教程系列为单位,列举出了已经发表和计划发表的连载教程: Nginx 新手起步 Nginx 是如何匹配 URI 的 Nginx 变量漫谈 Nginx 配置指令的执行顺序 Nginx 的 if 是邪 ...

  9. DIV周边添加投影及背景固定

    DIV周边添加投影.tou{ width:1000px; height:300px; border:0px solid #999; background:#FFF; margin:0 auto; ma ...

  10. 如何解决自定义ToolBar起始位置的空格(左对齐)问题

    最近在做项目的时候,与到自定义toolbar的问题,自定义toolbar布局之类的并不是很难,但是自定义布局完成之后,控件总是无法左对齐,这极大的影响了App的美观. 结果谷歌后在Stack Over ...