您的位置:首页 > 编程语言 > C#

C#编程基础第十课2:C#中的数组算法练习-求数组中的最大数、数组求和、利用数组生成随机验证码

2018-12-14 17:00 501 查看
版权声明:王迪 https://blog.csdn.net/dnruanjian/article/details/85000170

知识点:数组练习

声明一个数组,存放数据{23,18,79,6,57,88,65}

1、输出数组中的最大元素

[code]using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp2
{
class Program
{
static void Main(string[] args)
{
int[] arr = new int[7] { 23, 18, 79, 6, 57, 88, 65 };
//输出数组中的最大值
/*
* 方法:声明一个变量max用来存储最大值,变量max的初始值为数组中的第一个元素
* 将数组中的每一个元素,依次和变量max进行比较
* 如果数组元素大于变量max,则把数组元素赋值给变量max
* 直到数组中所有元素比完为止。(数组中有几个元素就要循环比较几次)
*/
int max = arr[0];//声明一个变量max存储最大值,将数组中第一个元素赋值给max
//循环变量还要作为数组下标使用,因此初始值为0
//循环次数,由数组长度来确定,数组长度=数组.Length
for (int i=0; i<arr.Length; i++)
{
if (arr[i]>max)
{
max = arr[i];
}
}
Console.WriteLine("数组中的最大数是"+max);
Console.ReadLine();
}
}
}

运行结果:

思考:输出数组中的最小数

 

2、求数组中{23,18,79,6,57,88,65},小于60的元素的个数

[code]        static void Main(string[] args)
{
int[] a = { 23, 18, 79, 6, 57, 88, 65 };
int n = 0;//声明一个变量n,用来存储低于60的元素个数,赋初值0
//将数组中的每一个元素和60相比较,如果小于60,则计数器n加1
for (int i=0;i<a.Length;i++)
{
if (a[i]<60)
{
n = n + 1;
}
}
Console.WriteLine("数组中小于60的元素个数是:"+n);
Console.ReadLine();
}

程序运行结果:

 

3、求数组中{23,18,79,6,57,88,65},所有元素之和

[code]      static void Main(string[] args)
{
int[] a = { 23, 18, 79, 6, 57, 88, 65 };
int sum = 0;//声明一个变量sum,用来存储求和结果
//求和的过程是,将数组里的每一个元素依次相加
for (int i=0;i<a.Length;i++)
{
sum = sum + a[i];
}
Console.WriteLine("数组中的元素之和是:"+sum);
Console.ReadLine();
}

程序运行结果:

 

4、利用数组,输出随机验证码

制作思路:

1、声明一个数组,将要作为验证码的字符,一起存放在数组中。

2、利用随机函数,生成随机整数,随机数的范围在0到数组长度-1之间。

3、将生成的随机整数,作为数组的下标,利用它调用数组里的元素。

[code]        static void Main(string[] args)
{
//声明一个字符串数组,把要作为验证码的字符存进去
string[] yzm =new string[8] {"D","武","8","y","G","#","中","3" };
Console.WriteLine("作为验证码的待选字符有:");
//遍历输出数组中的每一个字符,用作后面检验输出结果
foreach (string x in yzm)
{
Console.Write(x+"\t");
}
Console.WriteLine();//遍历完成后换行
Console.WriteLine();//输出一个空行
//利用随机函数,生成随机数
Random ran = new Random();
int a = ran.Next(0, yzm.Length - 1);
Console.WriteLine("系统生成第一个随机数a={0},利用{0}做数组下标,对应输出数组中的元素是:{1}",a,yzm[a]);
int b=ran.Next(0, 7);
Console.WriteLine("系统生成第一个随机数b={0},利用{0}做数组下标,对应输出数组中的元素是:{1}", b, yzm[b]);
int c = ran.Next(0, 7);
Console.WriteLine("系统生成第一个随机数c={0},利用{0}做数组下标,对应输出数组中的元素是:{1}", c, yzm[c]);
int d = ran.Next(0, 7);
Console.WriteLine("系统生成第一个随机数d={0},利用{0}做数组下标,对应输出数组中的元素是:{1}", d, yzm[d]);
Console.WriteLine();//输出一个空行
Console.WriteLine("将4个验证码一起输出:");
Console.WriteLine(yzm[a]+yzm[b]+yzm[c]+yzm[d]);
Console.ReadLine();
}

程序运行结果:

思考,将程序优化

1、利用循环输出随机数,并调出数组元素

2、生成随机验证码后,提示用户输入正确的验证码

3、根据用户输入验证码,给出提示,如果正确,提示验证成功。否则提示验证失败。

4、提示用户输入随机验证码,如果正确,提示验证成功,否则继续生成随机验证码,并提示用户输入,然后进行判断。

 

 

 

 

===========================这里是结束分割线===================================

 

 

 

 

 

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐