c#复习-1

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Collections;
 4 using System.Linq;
 5 using System.Text;
 6 using System.Threading.Tasks;
 7
 8 namespace ConsoleApplication1
 9 {
10     class Program
11     {
12         struct student               //结构体
13         {
14             public int xuhao;
15             public string xuehao;       //学号
16             public string name;      // 姓名
17             public decimal fenshu;   //分数
18
19         }
20         static void Main(string[] args)
21         {
22             //添加5个学生的信息到集合中,
23             //每个学生都有:学号,姓名,成绩,3个内容
24             //添加完毕后将学生的分数从高到低排列并打印出来
25
26             //请输入第1个学生的学号:101
27             //请输入第1个学生的姓名:xxx
28             //请输入第1个学生的成绩:99
29             //------------------------(注意加个分割线)
30             //请输入第2个学生的学号:102
31             //请输入第2个学生的姓名:xxx
32             //请输入第2个学生的成绩:98
33             //....一直到第5个输入完,然后按回车
34             //第1个学生的学号:101,姓名:xxx:成绩:99
35             //第2个学生....
36             //第3个..
37             //每段都加个分割线
38
39             //1、循环添加学生信息
40             ArrayList list = new ArrayList();
41
42             for (int i = 1; i < 6; i++)
43             {
44                 student stu = new student(); //实例化
45
46                 Console.Write("请输入第" + i + "个学生的学号:");
47                 stu.xuehao = Console.ReadLine();
48                 Console.Write("请输入第" + i + "个学生的姓名:");
49                 stu.name = Console.ReadLine();
50                 Console.Write("请输入第" + i + "个学生的成绩:");
51                 stu.fenshu = Convert.ToDecimal(Console.ReadLine());
52                 stu.xuhao = i;
53
54                 list.Add(stu);
55                 Console.WriteLine("===============================");
56             }
57
58             Console.WriteLine("------------------------成绩排序--------------------------");
59
60             //2、排序
61
62             for (int i = 0; i < list.Count - 1; i++)
63             {
64                 for (int j = i + 1; j < list.Count; j++)
65                 {
66                     student stu1 = (student)list[i];
67                     student stu2 = (student)list[j];
68
69                     if (stu1.fenshu < stu2.fenshu)
70                     {
71                         Object ob = list[i];
72                         list[i] = list[j];
73                         list[j] = ob;
74                     }
75                 }
76             }
77
78             //3、打印
79             foreach (object o in list)
80             {
81                 student ss = (student)o;
82                 Console.WriteLine("第" + ss.xuhao + "个学生的学号:" + ss.xuehao + ",姓名:" + ss.name + ",分数:" + ss.fenshu + "。");
83             }
84
85
86
87
88             Console.ReadLine();
89
90
91         }
92     }
93 }

时间: 2024-12-28 05:02:24

c#复习-1的相关文章

C++基础复习

一. C++与C的比较: C语言是一个结构化语言,它的重点在于算法和数据结构,C语言的设计首先要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到的输出(或实现过程(事物)控制). C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事物)控制. 所以C语言和C++的最大区别在于它们解决问题的思想不同,一个面向过程一个面向对象. C++对C的"增强",表现在六个方面: 1.类型检测更为严格. 2.

大量逻辑判断优化的思路——责任链模式复习总结及其和状态模式对比

俗话说,自己写的代码,6个月后也是别人的代码……复习!复习!复习!涉及的总结知识点如下: 责任链模式概念和例子 使用的条件 和状态模式的比较分析 责任链的优缺点 纯的责任链和不纯的责任链 javax.servlet.Filter#doFilter()方法源码分析 基于AOP思想,模拟一个拦截器 前面说了一个状态模式,总结过程中发现和这个责任链的使用场景很类似,都是为了解耦大量复杂业务逻辑判断的,那么他们有什么不同呢?回忆状态模式——状态模式允许通过改变对象的内部状态而改变对象自身的行为,这个对象

算法分析与设计复习

算法分析与设计复习 2016年初,研一上学期期末考试前,复习并总结算法分析与设计科目的内容.复习过程参照<算法导论>中文第2版,同时参照PPT,章节划分根据PPT内容 概要: 第一章 概述 第二章 插入排序&分治策略 第三章 复杂度分析 第四章 堆与堆排序 第五章 快速排序 第六章 线性时间排序 第一章 概述 算法的应用范围 算法在诸如生物等诸多领域有其应用 算法的意义 算法在很多情况下让不可能完成的事情变成了可能,让处理的很慢的过程变快. 一个铺垫 一串不全为0的数,怎么取能拿到一段

复习PHP-语言参考-预定义接口

1.Traversable 他是一个遍历接口规范 注意:发现一个有用的函数get_declared_classes,可以以数组形式显示当前脚本下所有已经定义的类名 2.Iterator Iterator迭代器继承自Traversable,是一种遍历对象内容的对象. 你可以自己写一个子类继承自它,并写上具体遍历的方法. Iterator包含:current(返回当前元素),key(当前键),next(下一个元素),rewind(返回至初始元素),valid(检测当前元素是否存在)五种方法. 3.I

underscore 复习 对象函数 篇章

_.partial = function(func) { var boundArgs = slice.call(arguments, 1); var bound = function() { var position = 0, length = boundArgs.length; var args = Array(length); for (var i = 0; i < length; i++) { args[i] = boundArgs[i] === _ ? arguments[positio

数据结构复习之C语言指针与结构体

数据结构指针复习: #include <stdio.h> void main() { int a[5] = {8, 2, 3, 4, 5}; // a[3] == *(3+a) printf("%d\n", *(3+a)); // a[3] 4 printf("*a其实就是a[0]: %d\n", *a); // 8 // 地址是连续的 printf("%p\n", a+1); printf("%p\n", a+2

jsp servlet基础复习 Part1

jsp和servlet的一些基础知识整理,用于备忘. 一.jsp与servlet的基本关系 1.jsp-->web容器-->servlet-->加载进容器的虚拟机执行-->输出执行结果给浏览器端 在这个过程,所有位于<%%>之外的值,都被认为是out.println()中的内容进行直接输出.详细理解看代码 <html> <% //例子说明:servlet和jsp的关系 boolean b = false; if(b){ %> 这里是内容一 <

shell脚本复习

最近公司工作量很小,就复习复习,看起了马哥的视频,感觉马哥讲课讲得特别细.这才是深入到系统的讲解,补充了很多我之前只是了解到皮毛的东西. shell编程:弱类型编程语言 强:变量在使用前,必须事先声明,甚至还需要初始化 NULL: 弱:变量用时声明,甚至不区分类型: 变量赋值:VAR_NAME=VALUE 编译器,解释器 编程语言:机器语言.汇编语言.高级语言 静态语言:编译型语言 强类型(变量) 关键字: 事先转换成可执行格式 C.  C++.JAVA.C# 动态语言:解释型语言 on the

[Java面试一]面试复习大纲.

一.Java基础部分 (搞定所有技术之后才考虑复习的技术点) 1.数组中的排序问题(笔试或者机试,前者可能性更大) 2.面向对象的理解 3.集合相关的问题,比如hashmap跟hashtable的区别.搞清楚每个集合对象的特性就欧了. 4.多线程启动方式,以及产生死锁的原因和解决办法[多线程问题不是很常问,有精力就复习这块内容] 5.IO流,了解常见的几个流对象以及基本的流操作即可,被机试的可能性比较小. 二.Web基础 (1年工作经验者需要重点复习的技术点) 1.http协议(定义.常见的请求

c#复习-2

输入三个学生的信息学号.姓名.分数从大到小排序 1 using System; 2 using System.Collections; 3 using System.Collections.Generic; 4 using System.Linq; 5 using System.Text; 6 7 namespace 复习CS 8 { 9 class Program 10 { 11 struct Student 12 { 13 public int num; 14 public string C