C#⼀维数组(1)⼀、复习:
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");
writeline特点}
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相关的数");
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下标。
}
案例⼀:做⼀个教练为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的⽣成器。
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;
}
}
//才能确定n合不合理
if(chong == false)
{
a[i] = n;
}
else
{
i--;
}//if
}//for
//显⽰号码
for(int k = 0;k<a.Length;k++)
{
Console.Write(a[k] + "\t");
}
作业⼀,20个⼿机号滚动显⽰,随机抽取⼀个中奖号码。
string[] cellPhone = new string[] { "130********", "131********", "132********", "133********", "135********", "136********", "137********", "138********", "139********", "150********", "151********", "158********", "182********", "183********" };
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个候选⼈中选⼀名班长出来。
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.WriteLi

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。