二、新课:

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. NET基础课--配置文件1

    在.NET Framework中,配置几乎是无处不在的.配置是控制应用程序行为的一些设置.下面我们就来看看到底有几个配置文件,而他们又分别代表了什么? 1. machine.config 这个文件只有 ...

  2. 用MVC4+EF改写XXX系统的计划--前言

    感觉自己工作了三年,重来没有自己一个人写一个项目,从开始的策划,功能需求,业务逻辑,扩展,性能优化等等方面去做,从今天起准备发比半年时间重写XXX项目,每天中午和晚上分别花半个小时和一个小时开发,周末 ...

  3. escape和unescape给字符串编码

    var before = "\xxx\xxx" var after = escape(before); var after2 = unescape(after );

  4. 几个因为hadoop配置文件不当造成的错误

    192.168.1.20: Exception in thread "main" java.lang.IllegalArgumentException 192.168.1.20: ...

  5. tomcat https jks 沃通免费证书安装 解决方案

    网上百度了一天什么没百度到,最后谷歌到了一篇文章启发之下解决之. 代理谷歌网站推荐一个,可以直接上谷歌: https://www.yundou.info ----------------------- ...

  6. c# 面相对象3-之继承性

    继承:类与类之间的关系(父子关系) 子类继承父类,那么子类就拥有父类的公共属性和方法一个子类只能继承一个父类,一个父类可以有好多子类子类对象可以直接转成父类,但父类只能转回对应的子类如果子类转成父类之 ...

  7. Visual Studio 使用技巧

    整理备用: 1. 键入prop后,连续按两下tab,  可以自动生成属性,然后输入类型和名称. 类似的还有: propg, 生成private set的属性 propfull,生成私有字段,和相应属性 ...

  8. CALayer CABasicAnimation

    CALayer是UIView可以响应事件.一般来说,layer可以有两种用途:一是对view相关属性的设置,包括圆角.阴影.边框等参数:二是实现对view的动画操控. 因此对一个view进行core ...

  9. MySql小知识点

    1.查看MySql是什么编码 show create table tablename;

  10. PNG图片小结

    PNG: 便携式网络图形(Portable Network Graphics,PNG)是一种无损压缩的位图图形格式,支持索引.灰度.RGB三种颜色方案以及Alpha通道等特性.PNG的开发目标是改善并 ...