C# 5 break continue 球员成绩 彩票 选班长
二、新课:
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 球员成绩 彩票 选班长的更多相关文章
- c 语言彩票选号
最近刚学了c语言,就做了个彩票选号程序练手玩玩,做的不好请见谅 1.分为前区(1-35)和后区(1-12)号码 2.先循环随机前区号在循环后区号 3.生成随机时数判断是否有重复值,和之前5期是否出现过 ...
- js中的break ,continue, return (转)
面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢?我们在使用这三关键字的时候需要注意和需要理解的规则是什么呢? ...
- break,continue的使用
break,continue 使用break命令允许跳出所有循环下面的例子中,脚本进入死循环直至用户输入数字大于5.要跳出这个循环,返回到shell提示符下,就要使用break命令. #!/bin/b ...
- 详解C#break ,continue, return
C#编程语法中break ,continue, return这三个常用的关键字的学习对于我们编程开发是十分有用的,那么本文就向你介绍break ,continue, return具体的语法规范. C# ...
- js中退出语句break,continue和return 比较 (转载)
在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是返回的同时也将函数停止 首先:break和continue两个一 ...
- break , continue , exit
break , continue , exit 例一:#!/bin/bash . /etc/init.d/functions `;do ];then #continue #没有数字3 break #e ...
- 有关于break,continue,return的区别和代码分析
今天,用代码和结果直接解释break,continue,return的区别 1.break代码 public static void breakTest() { //break的讲解 for(int ...
- Java基础(2):Java中的四个跳转语句总结goto,break,continue,return
跳转控制语句 Java中的goto是保留字,目前不能使用.虽然没有goto语句可以增强程序的安全性,但是也带来很多不便,比如说,我想在某个循环知道到某一步的时候就结束,现在就做不了这件事情.为了弥补这 ...
- js中退出语句break,continue和return 比较
js中退出语句break,continue和return 比较 在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是 ...
随机推荐
- tomcat-maven-plugin 插件使用
配置 在pom.xm 加入以下xml. <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId&g ...
- XHR 框架与 Dojo( xhrGet,xhrPut,xhrDelete)
总结 本文介绍了 Dojo 中三种浏览器与服务器交互的方式,这三种方式各有优缺点,但是在使用方式却出奇的一致: xhr 框架的函数,dojo.io.iframe.dojo.io.script 对象的函 ...
- FtpClient的使用
摘自:http://hi.baidu.com/yuanhotel/item/000b6334894d11f42784f4da Java的ftp操作 package com.why.ftp; impor ...
- IOS准备
1.Commond + shift + H 相当于Home键 2.更改项目的名称和icon图标 info.plist文件->bundle name -> 写上工程显示的名字 3.更改ico ...
- Java代理模式——静态代理模式
一:代理模式 代理模式的作用是:为其他对象提供一种代理以控制这个对象的访问.在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用. 二:代理模式设计 ...
- onbeforepaste
onbeforepaste事件用法 onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').rep ...
- 菜单之二:使用xml文件定义菜单
参考<疯狂android讲义>2.10节 P174,参见归档project:XmlMenuDemo.zip 一般推荐使用XML文件定义菜单. 基本步骤如下: 1.定义布局文件 为简单显示原 ...
- php的多线程使用
PHP 5.3 以上版本,使用pthreads PHP扩展,可以使PHP真正地支持多线程.多线程在处理重复性的循环任务,能够大大缩短程序执行时间. 在liunx下的安装 准备工作: 1.下载Threa ...
- C++ 前置声明 和 包含头文件 如何选择
假设有一个Date类 Date.h class Date { private: int year, month, day; }; 如果有个Task类的定义要用到Date类,有两种写法 其一 Task1 ...
- MySQL5.7新特性笔记
001.用户验证方式上的变化 MySQL5.7已经不要支持mysql_old_password验证插件,也不再支持old_password函数,也就说old_passwords也就不能被设置成1了.