c#部分---一维数组、冒泡排序、foreach的用法
2016-10-14 09:53
330 查看
一维数组:2016-10-14
定义方式:{定义的时候,需要数据类型、长度!}
1.int []aa=new int [5]; 表示数组里面有5个字符;
2.int []aa=new int []{1,2,3,4,5};
3.int []aa=new int [5]{1,2,3,4,5}; 表示数组里面有5个字符,分别是1,2,3,4,5,
★ aa[0]=1;表示数组中第一个空位;aa[1]=2; aa[2]=3; aa[3]=4; aa[4]=5;
(数组的索引是从“0”位开始的!)
1.输入班级人数,统计每个人的姓名,并打印;
Console.Write("请输入班级人数:");
int n = int.Parse(Console.ReadLine());
string []name=new string
;
for (int i = 0; i < name.Length;i++ )
{
Console.Write("请输入第{0}位学生的姓名:",(i+1));
name[i]=Console.ReadLine();
}
Console.Write("所有学生的姓名已经打印,请按enter键进行人员打印。");
Console.ReadLine();
Console.Clear();
for (int j = 0; j < name.Length;j++ )
{
Console.Write("第{0}位学生的姓名是:{1}",(j+1),name[j]);
}
//最后的for循环还可以用foreach替代:
★★foreach(string a in name) {表示把name数组里面的每个字符赋值给a}
{
Console.Write(a);
}
2.输入班级人数,统计每个人的年龄,并排序(从大到小)
//输入班级人数,统计每个人的年龄,并排序打印(从大到小)
Console.Write("请输入班级人数:");
int n = int.Parse(Console.ReadLine());
int []age=new int
;
for (int i = 0; i < age.Length;i++ )
{
Console.Write("请输入第{0}位学生的年龄:",(i+1));
age[i]=int.Parse(Console.ReadLine());
}
foreach (int aa in age)
{
Console.WriteLine(aa);
}
Console.Write("年龄输入完毕,请按回车键进行排序打印");
Console.ReadLine();
//★ for(int j=0;j<n-1;j++) ([b]冒泡排序)[/b]
{
for(int k=j+1;k<n;k++)
{
if(age[j]<age[k])
{
int zhong=age[j];
age[j]=age[k];
age[k]=zhong;
}
}
}
foreach(int aa in age)
{
Console.WriteLine(aa);
}
3个练习题;
//1.输入班级人数,输入每个人的分数,求班级最高分,最低分,平均分,
//去掉两个最高分并且去掉两个最低分之后的所有人员的平均分。
// Console.Write("请输入班级人数:");
// int n = int.Parse(Console.ReadLine());
// int []score=new int
;
// for (int i = 0; i < n;i++ )
// {
// Console.Write("第{0}位同学的分数是:",(i+1));
// score[i] = int.Parse(Console.ReadLine());
// }
// Console.Write("学生分数输入完毕,请按回车键进行排序。");
// Console.ReadLine();
// for(int j=0;j<score.Length-1;j++)
// {
// for(int k=j+1;k<n;k++)
// {
// if(score[j]<score[k])
// {
// int zhong=score[j];
// score[j]=score[k];
// score[k] = zhong;
// }
// }
// }
// int sum = 0;
// foreach(int aa in score)
// {
// Console.Write(aa);
// sum = sum + aa;
// }
//double sum1=sum-score[0]-score[1]-score[n-2]-score[n-1];
// Console.Write("分数排序完毕,请按回车键继续。");
// Console.ReadLine();
// Console.Write("最高分是:{0}",score[0]+"\n");
// Console.Write("最低分是:{0}", score[(n - 1)]+"\n");
// Console.Write("平均分是:{0}", (sum / n)+"\n");
// Console.Write("最后平均分是:{0}",(sum1/(n-4)));
//2.随机生成一注彩票中奖号码。(6个红球(范围1~33),一个蓝球(1~16)),注意,不能重复。
//Random aa = new Random();
//int[] h = new int[33];
//for (int i = 0; i < 6;i++ )
//{
// h[i] = aa.Next(1,33);
// //用冒泡排序
// for (int j = 0; j < 5; j++)
// {
// for (int k = j + 1; k < 6; k++)
// {
// if (h[j] == h[k])
// {
// h[j] = aa.Next(1, 33);
// }
// }
// }
// Console.Write("第{0}个红球号码是:{1}", (i + 1), h[i]+"\n");
//}
//int l = aa.Next(1,16);
//Console.Write("篮球号码是:{0}",l);
//3.拓展题目
//输入班级人数,输入一个人名,输入一个分数。求班级最高分是多少,是谁的分数(注意姓名跟分数对应)
Console.Write("请输入班级人数:");
int n = int.Parse(Console.ReadLine());
string []name=new string
;
int []score=new int
;
string []sz=new string
;
for (int i = 0; i < n;i++ )
{
Console.Write("请输入第{0}个学生的名字:",(i+1));
name[i] = Console.ReadLine();
Console.Write("请输入第{0}个学生的分数:",(i+1));
score[i] = int.Parse(Console.ReadLine());
sz[i] = name[i] + score[i];
}
Console.WriteLine("姓名与分数已经输入完毕,请按回车键进行排序并打印。");
Console.ReadLine();
for(int j=0;j<n-1;j++)
{
for(int k=j+1;k<n;k++)
{
if(score[j]<score[k])
{
string zhong=sz[j];
sz[j]=sz[k];
sz[k]=zhong;
}
}
}
foreach (string p in sz)
{
Console.WriteLine(p);
}
定义方式:{定义的时候,需要数据类型、长度!}
1.int []aa=new int [5]; 表示数组里面有5个字符;
2.int []aa=new int []{1,2,3,4,5};
3.int []aa=new int [5]{1,2,3,4,5}; 表示数组里面有5个字符,分别是1,2,3,4,5,
★ aa[0]=1;表示数组中第一个空位;aa[1]=2; aa[2]=3; aa[3]=4; aa[4]=5;
(数组的索引是从“0”位开始的!)
1.输入班级人数,统计每个人的姓名,并打印;
Console.Write("请输入班级人数:");
int n = int.Parse(Console.ReadLine());
string []name=new string
;
for (int i = 0; i < name.Length;i++ )
{
Console.Write("请输入第{0}位学生的姓名:",(i+1));
name[i]=Console.ReadLine();
}
Console.Write("所有学生的姓名已经打印,请按enter键进行人员打印。");
Console.ReadLine();
Console.Clear();
for (int j = 0; j < name.Length;j++ )
{
Console.Write("第{0}位学生的姓名是:{1}",(j+1),name[j]);
}
//最后的for循环还可以用foreach替代:
★★foreach(string a in name) {表示把name数组里面的每个字符赋值给a}
{
Console.Write(a);
}
2.输入班级人数,统计每个人的年龄,并排序(从大到小)
//输入班级人数,统计每个人的年龄,并排序打印(从大到小)
Console.Write("请输入班级人数:");
int n = int.Parse(Console.ReadLine());
int []age=new int
;
for (int i = 0; i < age.Length;i++ )
{
Console.Write("请输入第{0}位学生的年龄:",(i+1));
age[i]=int.Parse(Console.ReadLine());
}
foreach (int aa in age)
{
Console.WriteLine(aa);
}
Console.Write("年龄输入完毕,请按回车键进行排序打印");
Console.ReadLine();
//★ for(int j=0;j<n-1;j++) ([b]冒泡排序)[/b]
{
for(int k=j+1;k<n;k++)
{
if(age[j]<age[k])
{
int zhong=age[j];
age[j]=age[k];
age[k]=zhong;
}
}
}
foreach(int aa in age)
{
Console.WriteLine(aa);
}
3个练习题;
//1.输入班级人数,输入每个人的分数,求班级最高分,最低分,平均分,
//去掉两个最高分并且去掉两个最低分之后的所有人员的平均分。
// Console.Write("请输入班级人数:");
// int n = int.Parse(Console.ReadLine());
// int []score=new int
;
// for (int i = 0; i < n;i++ )
// {
// Console.Write("第{0}位同学的分数是:",(i+1));
// score[i] = int.Parse(Console.ReadLine());
// }
// Console.Write("学生分数输入完毕,请按回车键进行排序。");
// Console.ReadLine();
// for(int j=0;j<score.Length-1;j++)
// {
// for(int k=j+1;k<n;k++)
// {
// if(score[j]<score[k])
// {
// int zhong=score[j];
// score[j]=score[k];
// score[k] = zhong;
// }
// }
// }
// int sum = 0;
// foreach(int aa in score)
// {
// Console.Write(aa);
// sum = sum + aa;
// }
//double sum1=sum-score[0]-score[1]-score[n-2]-score[n-1];
// Console.Write("分数排序完毕,请按回车键继续。");
// Console.ReadLine();
// Console.Write("最高分是:{0}",score[0]+"\n");
// Console.Write("最低分是:{0}", score[(n - 1)]+"\n");
// Console.Write("平均分是:{0}", (sum / n)+"\n");
// Console.Write("最后平均分是:{0}",(sum1/(n-4)));
//2.随机生成一注彩票中奖号码。(6个红球(范围1~33),一个蓝球(1~16)),注意,不能重复。
//Random aa = new Random();
//int[] h = new int[33];
//for (int i = 0; i < 6;i++ )
//{
// h[i] = aa.Next(1,33);
// //用冒泡排序
// for (int j = 0; j < 5; j++)
// {
// for (int k = j + 1; k < 6; k++)
// {
// if (h[j] == h[k])
// {
// h[j] = aa.Next(1, 33);
// }
// }
// }
// Console.Write("第{0}个红球号码是:{1}", (i + 1), h[i]+"\n");
//}
//int l = aa.Next(1,16);
//Console.Write("篮球号码是:{0}",l);
//3.拓展题目
//输入班级人数,输入一个人名,输入一个分数。求班级最高分是多少,是谁的分数(注意姓名跟分数对应)
Console.Write("请输入班级人数:");
int n = int.Parse(Console.ReadLine());
string []name=new string
;
int []score=new int
;
string []sz=new string
;
for (int i = 0; i < n;i++ )
{
Console.Write("请输入第{0}个学生的名字:",(i+1));
name[i] = Console.ReadLine();
Console.Write("请输入第{0}个学生的分数:",(i+1));
score[i] = int.Parse(Console.ReadLine());
sz[i] = name[i] + score[i];
}
Console.WriteLine("姓名与分数已经输入完毕,请按回车键进行排序并打印。");
Console.ReadLine();
for(int j=0;j<n-1;j++)
{
for(int k=j+1;k<n;k++)
{
if(score[j]<score[k])
{
string zhong=sz[j];
sz[j]=sz[k];
sz[k]=zhong;
}
}
}
foreach (string p in sz)
{
Console.WriteLine(p);
}
相关文章推荐
- C#之一维数组,冒泡排序,输入输出案例
- C#中用foreach语句遍历数组及将数组作为参数的用法
- c#部分--- 一维数组放到集合中,在从集合中提取输出
- 关于算法—— 一维字符串数组之间组合问题的C#实现
- C# 一个字符串是否在另外一个字符串数组里 Array.Exists 的用法 Array.IndexOf 用法
- C#学习笔记—数组的冒泡排序
- 关于C#的垃圾回收以及List动态数组的用法。
- C#学习笔记:foreach遍历变长数组
- Java 一维数组,二维数组的定义声明 以及一维数组的 冒泡排序 以及二维数组的鞍点
- c#中数组,类型转换,using语句的其他用法
- C# 指定格式的字符串截成一维数组(二维数组)的操作类
- Java类似C#的foreach数组遍历
- 一维数组的高级用法
- Java类似C#的foreach数组遍历
- C# 一个字符串是否在另外一个字符串数组里 Array.Exists 的用法 Array.IndexOf 用法
- C++(typedef、一维数组转成二维数组、C和C++区别、成员地址成员指针、构造析构函数、this指针、const用法、显示时间、const用法)
- c#.net环境函数的参数数组的用法(关键字params)
- (教学思路 C#数组二)数组的属性、foreach遍历、交错数组与矩形数组的区别
- C#实现两个N*N矩阵的乘法,矩阵必须由一维数组表示
- C# 一维 多维 交叉数组