c#部分---一维数组、冒泡排序、foreach的用法
一维数组: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 [n];
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 [n];
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++) (冒泡排序)
{
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[n];
// 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 [n];
int []score=new int[n];
string []sz=new string [n];
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#部分---一维数组、冒泡排序、foreach的用法的更多相关文章
- C#-一维数组——★★冒泡排序★★
////★★★★★冒泡排序 ; i < a - ; i++) { ; j < a; j++) { if (age[i] < age[j]) { int zhong = age[i]; ...
- C 一维数组 冒泡排序,查最大值
1. 初始化 char a[10] = {'1','2','3','4','5'};//指定数组大小并部分赋初值, 其余部分赋值 '\0' ,ASSIC 是 0 char b[] = {'1','2' ...
- C# 一维数组 冒泡排序
假设有个三个杯子 一个杯子中有一个紫色的乒乓球 一个没有 一个有红色乒乓球 杯子不能动 怎么把紫色和红色的调换呢 主要是先把紫色的放到空的杯子 在把红的放到紫色原来的杯子 再把 ...
- 10-20C#基础---一维、二维数组&&冒泡排序
一.一维数组 1.定义:是某一种数据类型的数据的组合,数组用来分组基本类型或相同类型的对象.数组中的实体叫做数组的元素或成员. 2. 格式:int[ ] shuzu=new int[ 6];存放int ...
- C语言《一维数组的学习,冒泡排序》
#include<stdio.h> /* 一维数组的学习,冒泡排序 soulsjie 20170623 */ void main(){ int a[6]; int i,j,k; print ...
- 060 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 07 冒泡排序
060 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 07 冒泡排序 本文知识点:冒泡排序 冒泡排序 实际案例分析冒泡排序流程 第1轮比较: 第1轮比较的结果:把最 ...
- Day9 数组 冒泡排序及稀疏数组!
数组 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成. 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们.(下标从0开始) 数 ...
- C语言回顾-整型变量修饰符和一维数组
1.整型变量修饰符 1)改变整型变量的存储空间 #include <stdio.h> int main(int argc, const char * argv[]) { //改变整型变量占 ...
- c语言操作一维数组-3
C语言选择题#includemain(){double a[15],k;k=fun(a);} 则以下选项中错误的fun函数首部是 ( D)A.double fun(double a[15]) B.do ...
随机推荐
- C++-什么时候需要在类的构造函数中使用初始化列表
1,如果基类没有default构造函数,则意味着其不能自己初始化.如果其被派生,派生类的构造函数要负责调用基类的构造函数,并传递给它需要的参数.下例中Base 2,如果类成员没有默认构造函数.下例中E ...
- “更高效率:标准化+简约风+移动化”--K2 BPM老客户交流会
主题:工作流主数据标准化和移动工作流带来的企业沟通建设机会 嘉宾:李瑞延(盛大网络IT总监) 公司管理需要更好的工作流 -为决策提供依据 通过对各级业务公司各类流程数据的获取与分析,为管理决策提供必要 ...
- android 判断网络是否连接
package com.liucanwen.baidulocation.util; import android.app.Activity; import android.content.Contex ...
- 1.6 suid/guid
1.很系统供应商不允许使用这一命令,或者即使被置位,也会被忽略,这一命令会带来安全性风险. suid意味着该用户对自己的shell脚本设置了这种权限,那么其他用户执行该脚本时,也将拥有该用户相同的权限 ...
- c++形参和实参同名时,如何单步执行观察形参的变化。
c++形参和实参同名时,如何单步执行观察形参的变化? 方法:当程序运行到函数中时,添加变量观察即可.
- 配置VS2010具有代码提示功能
Visual Assist X是一款非常好的Microsoft Visual Studio插件,可以支持Microsoft Visual Studio 2003,Microsoft Visual St ...
- 子线程简单实现(ZT)
4.0以后的android在主线程中不可以直接访问网络,就得用以下的方法来搞,嘿嘿 在主函数中发送一个空的消息 : new Thread(){ @Override public void run() ...
- linux常用命令:3文件搜索命令
文件搜索命令 1. 命令名:find 命令所在路径:/bin/find 执行权限:所有用户 语法:find [搜索范围] [匹配条件] 功能描述:文件搜索 文件搜索类型 通过文件名搜索 -name ...
- VBS_DO...Loop
循环用于重复执行一组语句.循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句. 在 VBScript 中可使用下 ...
- Android Priority Job Queue (Job Manager):线程任务的容错重启机制(二)
Android Priority Job Queue (Job Manager):线程任务的容错重启机制(二) 附录文章4简单介绍了如何启动一个后台线程任务,Android Priority J ...