二、新课:

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. tomcat-maven-plugin 插件使用

    配置 在pom.xm 加入以下xml. <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId&g ...

  2. XHR 框架与 Dojo( xhrGet,xhrPut,xhrDelete)

    总结 本文介绍了 Dojo 中三种浏览器与服务器交互的方式,这三种方式各有优缺点,但是在使用方式却出奇的一致: xhr 框架的函数,dojo.io.iframe.dojo.io.script 对象的函 ...

  3. FtpClient的使用

    摘自:http://hi.baidu.com/yuanhotel/item/000b6334894d11f42784f4da Java的ftp操作 package com.why.ftp; impor ...

  4. IOS准备

    1.Commond + shift + H 相当于Home键 2.更改项目的名称和icon图标 info.plist文件->bundle name -> 写上工程显示的名字 3.更改ico ...

  5. Java代理模式——静态代理模式

    一:代理模式 代理模式的作用是:为其他对象提供一种代理以控制这个对象的访问.在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用. 二:代理模式设计 ...

  6. onbeforepaste

    onbeforepaste事件用法 onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').rep ...

  7. 菜单之二:使用xml文件定义菜单

    参考<疯狂android讲义>2.10节 P174,参见归档project:XmlMenuDemo.zip 一般推荐使用XML文件定义菜单. 基本步骤如下: 1.定义布局文件 为简单显示原 ...

  8. php的多线程使用

    PHP 5.3 以上版本,使用pthreads PHP扩展,可以使PHP真正地支持多线程.多线程在处理重复性的循环任务,能够大大缩短程序执行时间. 在liunx下的安装 准备工作: 1.下载Threa ...

  9. C++ 前置声明 和 包含头文件 如何选择

    假设有一个Date类 Date.h class Date { private: int year, month, day; }; 如果有个Task类的定义要用到Date类,有两种写法 其一 Task1 ...

  10. MySQL5.7新特性笔记

    001.用户验证方式上的变化 MySQL5.7已经不要支持mysql_old_password验证插件,也不再支持old_password函数,也就说old_passwords也就不能被设置成1了.