二、新课:

1.break与continue.

这两个关键字一般放在循环的花括号里面使用。

break——结束整个循环。

continue——结束本次循环,进入下次循环。

break的案例:

    int i = 1;

    for(;;)

    {

        if(i>100)

        {

            break;

        }

        Console.Write(i+"\t");

        i++;

    }

continue的案例:

for (int i = 1; i <= 100; i++)

{

if(i%2 == 0)

{

continue;

}

Console.Write(i + "\t");

}

2.while循环

//初始条件

while(循环条件)

{

//循环体

//状态的改为

}

案例:

    int i = 1;

    int count=0; //记录与7有关的数字的个数

    while(i<=100)

    {

        if(i%7==0 || i%10==7||i/10==7)

        {

            Console.Write(i+"\t");

            count++;

            //1

        }

        i++;

        //2

    }

    //3

    Console.Write("共有"+count+"个与7相关的数");

3.do...while(循环条件)简单了解。

即使初始条件不满足循环条件,循环还会执行一次。

至少执行一次。

数组:解决同一类大量数据在内存存储和运算的功能。

分类:一维数组、二维数组、多维数组。

特点:连续,同一类数据。

一、一维数组:豆角。

定义:指定类型,指定长度,指定名称。

int[] a = new int[5];  //5是长度。从1开始算。默认5个元素初始值都是0.

int[] a = new int[5] { 90, 95, 89, 76, 99 };

int[] a = new int[5] { 90, 95, 89 }; //语法有错,后面初始化的值必须是5个。

int[] a = new int[] { 90, 95, 89, 76, 99}; //计算机会根据后面的赋值,动态计算数组的长度。

赋值:

数组名[下标数值] = 值;

int[] a = new int[5];

a[0] = 10;

a[1] = 20;

a[2] = 30;

a[3] = 40;

a[4] = 50;

取值:

数组名[下标数值]; //下标数值从0开始。

Console.WriteLine(a[3]+a[0]);

数组的好处:

1.对于大量数据来说,保存的时候,定义一个数组即可解决。

2.用循环来控制数组的下标,可以对数组进行批量操作。

例如:

    int[] a = new int[5];

//数组的批量赋值

    for (int i = 0; i < 5;i++ )

    {

        a[i] = (i + 1) * 10;

    }

//数组的批量取值。

    for (int j = 0; j < 5;j++ )

    {

        Console.WriteLine(a[j]);  //0下标。

    }

例:这是数组

static void bbb(string[] args)

        {

int[] a = new int[5]; //5是长度,

//int[] a = new int[5] { 90, 95, 89, 76, 99 };

//int[] a = new int[] { 90, 95, 89, 76, 99};

for (int i = 0; i < 5;i++ )

            {

                a[i] = (i + 1) * 10;

            }

for (int j = 0; j < 5;j++ )

            {

Console.WriteLine(a[j]);  //0下标。

            }

        }

例:球员的成绩总分 平均分

static void Main(string[] args)

        {

int[] a = new int[6];

Console.WriteLine("********球员训练记录********");

//输入

for (int i = 0; i < a.Length; i++)

            {

Console.Write("请输入第"+(i+1)+"个球员的成绩:");

                a[i] = Convert.ToInt32(Console.ReadLine());

            }

//输出每个球员的分

for(int j=0;j<a.Length;j++)

            {

Console.WriteLine("第"+(j+1)+"位球员的分数是"+a[j]+"分。");

            }

//计算并显示总分和平均分。

int sum = 0;

for(int i=0;i<a.Length;i++)

            {

                sum = sum + a[i];

            }

double avg = 0;

            avg = 1.0 * sum / a.Length;

Console.WriteLine("总分是:" + sum + "。平均分是:" + avg + "。");

        }

例:球员的最高分最低分

static void Main(string[] args)

        {

int[] a = new int[6];

//输入

for(int i=0;i<a.Length;i++)

            {

Console.Write("请输入第"+(i+1)+"个球员的分数:");

                a[i] = Convert.ToInt32(Console.ReadLine());

            }

//找最大和最小

int max = 0, min = 100000;

int maxSub = -1, minSub = -1;

for (int i = 0; i < a.Length; i++)

            {

if (a[i] > max)

                {

                    max = a[i];

                    maxSub = i;

                }

if (a[i] < min)

                {

                    min = a[i];

                    minSub = i;

                }

            }

//输出

            maxSub++;

            minSub++;

Console.WriteLine(maxSub + "号球员分数最高,分数是:" + max + ";" + minSub + "号球员分数最低,分数是:" + min);

        }

例:彩票生成器36选7

static void Main(string[] args)

        {

int[] a = new int[7];  

Random rand = new Random();     //①生成器

for (int i = 0; i < 7; i++)                      //7--代表要生成7个不同的数

            {

int n = rand.Next(36);    //②生成一个随机数。

                n++;

//查重

bool chong = false;

for(int j=0;j<a.Length;j++)

                {

if(n == a[j])

                    {

                        chong = true;

break;

                    }

                }

//才能确定n合不合理

if(chong == false)

                {

                    a[i] = n;

                }

else

                {

                    i--;

                }

            }

//显示彩票号码

for(int k = 0;k<a.Length;k++)

            {

Console.Write(a[k] + "\t");

            }

        }

案例一:做一个教练为6个球员打分的程序。

            //定义一个保存球员成绩的数组

int[] a = new int[6];

            //输入

            for (int i = 0; i < a.Length; i++)

            {

                Console.Write("请输入第"+(i+1)+"个球员的成绩:");

                a[i] = Convert.ToInt32(Console.ReadLine());

            }

            //输出

            for(int j=0;j<a.Length;j++)

            {

                Console.WriteLine("第"+(j+1)+"位球员的分数是"+a[j]+"分。");

            }

案例二:在案例一的基础上,显示球员总分和平均分。

案例三:在案例二的基础上,显示最高分和最低分,以及相应球员的代号。

案例四:青歌赛中有10个评委给一个选手打分,每打分后,要去掉一个最高分和一个最低分,计算该选手的平均得分。

案例五:做一个36选7的彩票生成器。

作业;

1 20个手机号滚动显示随机抽出一个中奖号码来;  System.Threading.Thread.Sieep(100); 让滚动慢一点

2选班长,30个同学投票 从五个后候选人中选出来一个来 

//20个手机号滚动显示随机抽出一个中奖号码来;

static void Main(string[] args)

        {

string[] cellPhone = new string[] { "13012345678", "13109876543", "13287654678", "13309876789",

"13509878902", "13698374651", "13757893421", "13876561234","13909876543",

"15034567438", "15111234795", "15894574839", "18210394857", "18302938475" };

Random rand = new Random();

for (int i = 0; i < 50; i++)

            {

                System.Threading.Thread.Sleep(100);                 //变慢一些。    

int sub = rand.Next(cellPhone.Length);             //随机生成数组的下标。

string s = cellPhone[sub];                //根据下标取数组的元素值。 

Console.Clear();            //清屏

Console.WriteLine(s);                //显示   

            }

        }

    }

}

//投票  30人投票,从5个候选人选一个出来。

static void Main(string[] args)

        {

int[] vote = new int[5];

for (int i = 0; i < 30; i++)

            {

Console.Write("请第" + (i + 1) + "位同学投票(0-4):");

int temp = Convert.ToInt32(Console.ReadLine());

if (temp < 0 || temp > 4)

                {

Console.WriteLine("废票");

continue;

                }

else

                {

                    vote[temp]++;

                }

            }

//计算最终得票。        

int max = 0, maxSub = 0;

for (int i = 0; i < vote.Length; i++)

            {

//把每位候选人的票数显示出来。 

Console.WriteLine("第" + (i + 1) + "号候选人的票数是:" + vote[i]);

//计算最大值。     

if (vote[i] > max)

                {

                    max = vote[i];

                    maxSub = i;

                }

            }

//显示最终结果。      

Console.WriteLine("最终投票结果为:" + (maxSub + 1) + "号候选人当选,当选票数是" + max + "票。");

        }

    }

}

C# 5 break continue 球员成绩 彩票 选班长的更多相关文章

  1. c 语言彩票选号

    最近刚学了c语言,就做了个彩票选号程序练手玩玩,做的不好请见谅 1.分为前区(1-35)和后区(1-12)号码 2.先循环随机前区号在循环后区号 3.生成随机时数判断是否有重复值,和之前5期是否出现过 ...

  2. js中的break ,continue, return (转)

    面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢?我们在使用这三关键字的时候需要注意和需要理解的规则是什么呢? ...

  3. break,continue的使用

    break,continue 使用break命令允许跳出所有循环下面的例子中,脚本进入死循环直至用户输入数字大于5.要跳出这个循环,返回到shell提示符下,就要使用break命令. #!/bin/b ...

  4. 详解C#break ,continue, return

    C#编程语法中break ,continue, return这三个常用的关键字的学习对于我们编程开发是十分有用的,那么本文就向你介绍break ,continue, return具体的语法规范. C# ...

  5. js中退出语句break,continue和return 比较 (转载)

    在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是返回的同时也将函数停止 首先:break和continue两个一 ...

  6. break , continue , exit

    break , continue , exit 例一:#!/bin/bash . /etc/init.d/functions `;do ];then #continue #没有数字3 break #e ...

  7. 有关于break,continue,return的区别和代码分析

    今天,用代码和结果直接解释break,continue,return的区别 1.break代码 public static void breakTest() { //break的讲解 for(int ...

  8. Java基础(2):Java中的四个跳转语句总结goto,break,continue,return

    跳转控制语句 Java中的goto是保留字,目前不能使用.虽然没有goto语句可以增强程序的安全性,但是也带来很多不便,比如说,我想在某个循环知道到某一步的时候就结束,现在就做不了这件事情.为了弥补这 ...

  9. js中退出语句break,continue和return 比较

    js中退出语句break,continue和return 比较 在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是 ...

随机推荐

  1. js执行环境深入研究

    js 声明函数是创建函数对象的过程,当创建函数对象时,函数对象的[[scope]] =连当前执行环境对象的作用域(栈顶执行环境--当执行函数时,js会将该函数的执行环境对象入栈) 当为全局函数时,如: ...

  2. 六步实现Spring.NET 与 NHibernate 的整合

    最近刚完成一个项目,其中对数据库的架构用到的是Spring.NET 与 NHibernate相结合的产物.对于这两项技术,我自己也不是太熟悉,不过好在网上有很多关于这方面的介绍文档,在这里就不多说了. ...

  3. 【数据处理】各门店POS销售导入

    --抓取西部POS数据DELETE FROM POSLSBF INSERT INTO POSLSBFselect * from [192.168.1.100].[SCMIS].DBO.possrlbf ...

  4. JQ 事件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. AngularJS 不得不了解的服务 $compile 用于动态显示html内容

    项目中一度纠结与AngularJS如何动态显示不同的html内容. 本来是希望直接使用下面的语句来实现: <div> </div> 但是很尴尬的是,这样不能识别出html标签, ...

  6. mac/linux install hg

    MAC OSX 10.9: sudo port -v install mercurial or easy_install mercurial

  7. Laravel学习笔记

    1.Laravel 5 动态设置缓存引擎 \Config::set('cache.default','redis'); var_dump( \Config::get('cache.default') ...

  8. Ajax XMLHttpRequest对象的三个属性以及open和send方法

    (1)onreadystatechange 属性onreadystatechange 属性存有处理服务器响应的函数.下面的代码定义一个空的函数,可同时对 onreadystatechange 属性进行 ...

  9. Nginx 配置指令的执行顺序(六)

    前面我们在 (五) 中提到,在一个 location 中使用 content 阶段指令时,通常情况下就是对应的 Nginx 模块注册该 location 中的“内容处理程序”.那么当一个 locati ...

  10. cf467B Fedor and New Game

    B. Fedor and New Game time limit per test 1 second memory limit per test 256 megabytes input standar ...