基于java 成绩排名程序 c语言算法也相同

合集下载

java 经典笔试算法题

java 经典笔试算法题

java 经典笔试算法题一、排序算法1. 实现一个基于Java的快速排序算法。

答:快速排序是一种常用的排序算法,其核心思想是分治法。

首先选择一个基准元素,将数组分成两部分,一部分小于基准元素,一部分大于基准元素。

然后递归地对这两部分继续进行快速排序,直到整个数组有序。

2. 实现一个稳定的冒泡排序算法。

答:冒泡排序是一种简单的排序算法,通过重复地遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。

稳定的冒泡排序算法是指在排序过程中,相同元素的相对位置不会改变。

3. 实现一个选择排序算法。

答:选择排序是一种简单直观的排序算法。

其工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。

二、字符串操作算法1. 实现一个函数,将一个字符串反转。

答:可以使用StringBuilder类的reverse()方法来实现字符串的反转。

2. 实现一个函数,将一个字符串中的所有大写字母转换为小写字母,其余字符保持不变。

答:可以使用String类的replaceAll()方法和toLowerCase()方法来实现。

3. 实现一个函数,将一个字符串按空格分割成单词数组,并删除空字符串和null字符串。

答:可以使用split()方法和Java 8的流来处理。

三、数据结构算法1. 实现一个单向链表,并实现插入、删除、查找和打印链表的功能。

答:单向链表是一种常见的数据结构,可以通过定义节点类和链表类来实现。

插入、删除、查找和打印链表的功能可以通过相应的方法来实现。

2. 实现一个二叉搜索树(BST),并实现插入、查找、删除节点的功能。

答:二叉搜索树是一种常见的数据结构,它具有唯一的高度特性。

插入、查找和删除节点的功能可以通过相应的方法来实现,如左旋、右旋、递归等。

3. 实现一个哈希表(HashMap),并实现插入、查找和删除键值对的功能。

答:HashMap是一种基于哈希表的映射数据结构,它通过哈希码的方式将键映射到对应的值上。

常用的编程语言介绍及各语言特点

常用的编程语言介绍及各语言特点

常⽤的编程语⾔介绍及各语⾔特点C语⾔(⼀)C语⾔诞⽣于1972年,可以称之为现代⾼级语⾔的⿐祖,由著名的贝尔实验室发明。

C语⾔是⼈们追求结构化、模块化、⾼效率的“语⾔之花”。

在底层编程,⽐如嵌⼊式、病毒开发等应⽤,可以替代汇编语⾔来开发系统程序。

在⾼层应⽤,也可以开发从操作系统(Unix/Linux/Windows都基于C语⾔开发)到各种应⽤软件。

C语⾔在现代社会流⾏程度仍然排名前三。

(⼆)1.语⾔简洁、紧凑,使⽤⽅便、灵活C语⾔有37个关键字,9种控制语句,程序书写形式⾃由,主要⽤⼩写字母表⽰,压缩了⼀切不必要的成分。

实际上,C是⼀个很⼩的内核语⾔,只包括极少的与硬件有关的成分,C语⾔不直接提供输⼊和输出语句、有关⽂件操作的语句和动态内存管理的语句等(这些操作由编译系统所提供的库函数来实现的),C的编译系统相当简洁。

版权声明:本⽂为博主原创⽂章,转载请附上博⽂链接!2.运算符丰富C语⾔的运算符包含的范围很⼴泛,共有34种运算符。

C语⾔把括号、赋值和强制类型转换等都作为运算符处理,从⽽使C语⾔哟运算类型极其丰富,表达式类型多样化。

3.数据类型丰富C语⾔提供的数据类型包括:整型、浮点型、字符型、数组类型、指针类型、结构体类型和共⽤体类型等,C99⼜扩充了复数浮点类型、超长整型和布尔类型等。

尤其是指针类型数据,使⽤⼗分灵活和多样化,能⽤来实现各种复杂的数据结构(如链表、树、栈等)的运算。

4.具有结构化的控制语句如if…else语句、do…while语句、switch语句和for语句等。

⽤函数作为程序的模块单位,便于实现程序的模块化。

C语⾔是完全模块化和结构化的语⾔。

5.语法限制不太严格,程序设置⾃由度⼤。

6.C语⾔允许直接访问物理地址,能进⾏位操作,能实现汇编语⾔的⼤部分功能,可以直接对硬件进⾏操作。

C语⾔既具有⾼级语⾔的功能,⼜具有低级语⾔的许多功能,可⽤来编写系统软件。

7.⽤C语⾔编写的程序可移植性好。

java和c语言的区别-哪个比较好-学习JAVA还是C

java和c语言的区别-哪个比较好-学习JAVA还是C

java和c语言的区别-哪个比较好-学习JAVA还是Cjava和c语言的主要区别有这些:1.C语言是面向过程的语言,Java是面向对象的语言;2.C语言的安全性不如Java,Java的通用性好;3.C语言编写速度的程序要优于Java。

1、C语言是面向过程的语言,执行效率高;Java是面向对象的语言,执行效率比C语言低。

2、C语言的安全性不如Java,C语言没有Java的垃圾回收机制,申请的空间要手动释放。

Java的通用性好,可以跨平台直接移植,只要有安装Java虚拟机(JVM)就可以了。

3、在速度上,C语言编写的程序要优于Java。

4、C语言注重的是算法,但是Java却不一样,想用的时候导包就可以了。

C语言的算法很重要,但是Java中的算法没有C语言那么复杂。

5、Java采纳Unicode字符集,C语言通常采纳的是ASCII字符集,A—65,a—97。

6、C语言的变量可以不进行初始化,但Java的变量要进行初始化。

2c语言和java哪个比较好Java是在c语言的基础上,抛弃了一些指针之类的东西,和c 完全不同的是Java是一门面向对象的语言,Java是跨平台的,Java是安全的,许多要求安全的企业对Java必须求很大,Java 也一直排名语言榜第一位。

它的不够是不够简洁,不是底层语言,不能直接操作硬件,有些事情没有办法做的很好,比如硬件〔编程〕,嵌入式之类的等。

c语言更像是计算机程序语言的基础,所以学会c语言向其他语言转移也是非常简单的,c语言是完全底层的语言,比如驱动、通信协议之类,在Unix和Linux环境中也是不可或缺的,另外在嵌入式领域也大有作为,而且c语言效率极高。

c语言也有一些问题,因为是面向过程的,所以不像面向语言的Java灵活,尤其在团队开发的时候,不是跨平台的,具有不可移植性。

由于过于底层,所以对硬件依赖很高,导致一旦硬件环境变化,会出现一些问题,c语言的输入输出相对复杂等等问题。

Java面试题合集Java中的排序算法

Java面试题合集Java中的排序算法

Java面试题合集Java中的排序算法Java面试题合集——Java中的排序算法排序算法是计算机科学中的基本算法之一,而在Java编程语言中,也提供了多种排序算法的实现。

掌握常见的排序算法是Java开发者面试时的重要考点之一。

本文将介绍Java中一些常用的排序算法,并对它们的原理、应用场景和性能进行讨论。

一、冒泡排序(Bubble Sort)冒泡排序是一种简单但效率较低的排序算法,它的基本思想是通过不断交换相邻元素的位置,将较大或较小的元素逐渐“冒泡”到数组的一端。

具体实现如下:```javapublic static void bubbleSort(int[] arr) {int n = arr.length;for (int i = 0; i < n - 1; i++) {for (int j = 0; j < n - i - 1; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}```冒泡排序的时间复杂度为O(n^2),因此对于大规模数据的排序效率较低。

但它的实现简单,对于小规模数据或基本有序的数据仍然具有一定优势。

二、选择排序(Selection Sort)选择排序是一种简单但效率较低的排序算法,它每次从待排序的元素中选择最小(或最大)的元素放到已排序的部分末尾。

通过不断选择并交换元素,实现整个数组的排序。

具体实现如下:```javapublic static void selectionSort(int[] arr) {int n = arr.length;for (int i = 0; i < n - 1; i++) {int minIndex = i;for (int j = i + 1; j < n; j++) {if (arr[j] < arr[minIndex]) {minIndex = j;}int temp = arr[i];arr[i] = arr[minIndex];arr[minIndex] = temp;}}```选择排序的时间复杂度同样为O(n^2),虽然在大规模数据的排序中效率较低,但由于每次只需交换一次元素,因此相对于冒泡排序而言,选择排序的性能略高。

《C语言程序设计》课程标准

《C语言程序设计》课程标准

《C语言程序设》计课程标准一、课程名称C语言程序设计二、适用专业本课程标准适用计算机网络技术、大数据技术与应用、软件工程技术、数字媒体应用技术等专业三、课程性质《C语言程序设计》是一门专业必修课,是学习其它工科课程的基础。

掌握程序设计的前提是掌握程序设计语言,C语言以其灵活性和实用性受到了广大计算机应用人员的喜爱。

一旦掌握了C语言,就可以较为轻松地学习后续的Java程序设计、数据库技术等程序设计语言。

本课程以程序设计思想为主线,介绍C语言的基本概念和程序设计的思想和方法,培养学生运用C语言解决实际问题的能力。

本课程旨在使学生掌握程序设计的基本方法及思维,形成程序设计基本思想,掌握程序调试的基本方法,使学生初步具备程序设计能力,为学生进一步学习其他专业课程和今后从事网络技术工作打下坚实的基础。

四、教学目标本课程的培养目标是:通过基于工作过程的案例驱动和项目实训,使学生全面掌握C 语言的基本理论、基本编程方法、基本内容和主要应用领域;了解C语言发展的最新动态和前沿问题;培养具有较强综合分析能力和解决问题能力,综合素质较高的计算机编程人才。

在课程的学习中,培养善于沟通表达、创新学习、独立分析解决问题的能力,为学生今后进一步学习计算机网络技术专业知识和学生就业、工作打下良好的基础。

2.1知识目标获取全国计算机等级考试二级证书。

2.2素质目标2.3能力目标(一)知识目标(1)掌握软件开发必备的C程序设计知识。

包括数据类型、结构化程序设计方法、数组、函数、指针、结构体等知识;(2)掌握基本的编程规范;(3)掌握一定的程序员岗位职责及工作规范。

(4)掌握用C语言进行程序设计的基本框架,理解结构化程序设计思想;(5)熟练应用C语言集成环境设计和调试C程序;(6)能用C语言程序设计的方式分析和解决简单实际问题并测试程序;(二)能力目标(1)具有基本的算法设计能力;(2)具有一定的C程序设计与应用开发和软硬件测试能力;(3)具有一定的模块设计能力;(4)具有一定的需求分析能力;(5)具有一定的软件文档写作能力;(6)具有良好的沟通能力;(7)具有良好的团队合作意识;(8)具有良好的分析问题、解决问题的能力;(9)具有一定的创新能力(10)掌握计算机语言类课程的学习方法,无论以后在学习、工作中使用什么语言编程,都能灵活应用程序设计的思想和方法分析、解决问题。

java 排序规则

java 排序规则

java 排序规则Java排序规则在Java中,排序是一项常见的操作,用于对数据进行整理和排列。

排序规则即决定了排序的方式和顺序,不同的排序规则可以根据需求选择合适的算法和方法。

下面将介绍几种常用的Java排序规则。

1. 字母排序字母排序是按照字母表的顺序对字符串进行排序。

在Java中,可以使用String类的compareTo方法来比较两个字符串的大小。

该方法返回一个int值,如果字符串相等则返回0,如果字符串在字母表中排在前面则返回负数,否则返回正数。

通过实现Comparator接口,可以自定义排序规则,实现对字符串数组的字母排序。

2. 数字排序数字排序是按照数字的大小对数据进行排序。

在Java中,可以使用Arrays类的sort方法对数组进行排序。

sort方法默认使用升序排序,即从小到大排列。

如果需要降序排序,可以使用Collections 类的reverseOrder方法。

通过实现Comparable接口,可以自定义排序规则,实现对自定义类对象的数字排序。

3. 时间排序时间排序是按照时间的先后顺序对数据进行排序。

在Java中,可以使用Date类或者Calendar类来表示时间,然后使用compareTo方法进行比较。

同样,通过实现Comparator接口,可以自定义排序规则,实现对时间的排序。

4. 自定义排序规则除了使用内置的排序方法和类,我们还可以自定义排序规则。

在Java中,可以通过实现Comparator接口来自定义排序规则。

Comparator接口有一个compare方法,可以根据自己的需求来实现比较逻辑。

比如,可以根据字符串的长度、数字的奇偶性等来排序。

5. 多字段排序有时候需要按照多个字段进行排序,比如先按照年龄排序,再按照姓名排序。

在Java中,可以使用多个Comparator对象来实现多字段排序。

可以使用Comparator的thenComparing方法来实现多字段排序,先按照第一个字段排序,如果相等再按照第二个字段排序,依次类推。

java和c有什么区别-java与C语言哪个更好

java和c有什么区别-java与C语言哪个更好

java和c有什么区别-java与C语言哪个更好java和c的区别介绍:1.〔制定〕思路不同:C语言是面向过程的语言,执行效率高;Java是面向对象的语言,执行效率比C语言低。

2.效率不同:C语言执行效率高;Java执行效率比C语言低。

以下是关于java和c有什么区别的具体介绍。

1、制定思路不同:C语言是面向过程的语言,执行效率高;Java 是面向对象的语言,执行效率比C语言低。

2、效率不同:C语言执行效率高;Java执行效率比C语言低。

3、通用性不同:C语言不能跨平台;java可以跨平台直接移植。

4、语法不同:基本数据类型不同:c语言的基本类型的位数和操作系统和机器相关,而java是固定的;文件组织方式不一样:c语言会把全局变量和方法的声明,放在一个文件里面,叫做头文件,而java 是以类来组织文件的.5、应用领域不同:C语言主要用于驱动开发、操作系统、内核开发,嵌入式(单片机)、交换机、路由器等网络设备的开发;java 主要是企业应用开发,包括服务器端开发、嵌入式领域、大数据技术、网站领域等。

2java与C语言哪个更好从发展前景、将来主导看,C语言更有前途一些。

因为C语言是继机器码、汇编之后第一个底层的与自然语言接近的语言,兼顾高效率与易理解,所以做底层的主流语言C的地位永远不会改变。

java是面向对象的高级语言,主要目的是容易理解和编写代码,那么将来肯定会出现更加人性化的高级语言来取代它。

这个结论从C语言出现的几十年但一直居于〔编程〕语言排行榜的前三名就可以证实。

从优势和就业来看,java目前好一点,java是面向对象的高级语言,所以应用软件主要使用它,相比较C擅长的底层开发,应用软件的市场更大一些,所以也更容易就业一些,但是如果C学的非常好的话,就业非常容易。

3c和java先学哪个1、建议新手学java,Java比c简单,c有很多的细节必须要你掌握,比如指针,内存分配,内存释放等这些细节概念。

C语言与Java的异同比较

C语言与Java的异同比较

C语言与Java的异同比较C语言和Java都是广泛应用于计算机编程领域的高级编程语言,它们都有各自的特点和优势。

本文将对C语言和Java进行异同比较,以便更好地理解它们的差异和共同之处。

一、语法差异C语言和Java在语法方面存在一些差异。

首先,C语言是一种过程式语言,而Java是一种面向对象的语言。

因此,C语言更加注重过程和函数的设计,而Java更加注重类和对象的概念。

其次,C语言的语法相对较为自由,允许直接操作内存,而Java则通过垃圾回收机制和虚拟机来管理内存。

此外,C语言对指针的使用较为灵活,而Java将指针的使用限制在了较低的层面上。

二、跨平台特性Java是一种跨平台的编程语言,这是它的一个独特优势。

Java编写的代码可以在不同的操作系统上运行,只需在相应平台上安装Java虚拟机(JVM)。

而C语言编写的程序需要根据不同的操作系统进行编译和适配,无法直接在其他平台上运行。

这也是Java在企业级应用中得到广泛应用的原因之一。

三、性能比较由于C语言更加底层,直接操作内存,因此在性能方面往往具有优势。

而Java编程是在虚拟机上运行的,需要额外的解释和执行过程,相对而言性能稍低。

但是,随着硬件的不断升级和Java技术的发展,这种差距逐渐减小,大部分情况下两者的性能差异并不明显。

四、开发效率相对而言,Java在开发效率方面更高。

Java具有丰富的类库和工具支持,提供了自动内存管理和垃圾回收机制,从而减少了程序员的工作量。

Java还有成熟的开发框架和IDE工具,简化了程序的开发和调试过程。

相比之下,C语言需要程序员自己管理内存,代码的编写和调试过程相对较为复杂。

五、应用领域C语言和Java在应用领域上有所差异。

C语言在嵌入式开发、操作系统、游戏开发等方面具有广泛应用,尤其是对于对性能要求较高的场景。

而Java在企业级应用、服务器端开发、大数据处理等方面具有更强的优势。

Java具备良好的可维护性和扩展性,适合构建大型复杂系统。

各种编程语言的比较和优缺点分析

各种编程语言的比较和优缺点分析

各种编程语言的比较和优缺点分析作为人类历史上一个非常重要的成果,计算机科学在近几十年来的飞速发展,极大地改变了我们的工作和社会生活。

计算机编程语言是实现计算机应用的重要工具,它的设计和选择对程序员和软件工程师来说是非常关键的。

本文将介绍常见的编程语言,并分析它们的优缺点,以供读者选择适合自己的编程语言。

1、C语言C语言由贝尔实验室的丹尼斯·里奇于1972年发明,是一种面向过程的编程语言,侧重于“低层次”程序编写,特别是对硬件的底层访问。

由于C语言直接调用计算机的底层资源,因此学习和使用C语言需要对底层计算机架构有一定的理解。

另外,C语言的语法非常简洁,因此编写出的代码量相对较少,执行效率也很高。

C语言在系统编程、操作系统编写、设备驱动程序和嵌入式系统等领域非常流行。

然而,对于程序员而言,C语言的学习曲线较陡峭,错误处理和动态存储管理也相对较复杂。

此外,C语言并没有内建支持面向对象程序设计的特性,因此在开发大型应用程序时,代码结构可能会相对混乱。

2、C++语言C++是C语言的扩展版,由贝尔实验室的比雅尼·斯特劳斯卡普于1979年发明。

与C语言相比,C++提供了面向对象编程的支持。

此外,C++还提供了更好的内存管理工具和类型安全性。

C++是一种中级语言,兼具了面向对象的高级语言和底层编程语言的特点。

C++在游戏开发、计算机图形学和高性能计算等领域得到广泛应用,也被广泛用于开发桌面软件。

但对于初学者而言,C++的学习曲线可能较陡峭,并且语法相对复杂。

此外,C++的注重性能的特点导致代码结构相对松散。

C++还需要程序员自己来分配和管理内存,因此需要特别注意内存泄漏的问题。

3、Java语言Java是一种面向对象编程的语言,在20世纪90年代初期由Sun Microsystems开发。

Java由于被设计为平台无关的语言,因此可以使用Java虚拟机在多种操作系统上运行应用程序。

Java的语法相对简单,可读性强,因此Java语言在大量企业级应用程序的开发中得到广泛应用,如银行、保险、电信、邮政、政府等领域。

计算机语言排名

计算机语言排名

计算机语言排名计算机语言是一种用于编写和运行计算机程序的工具。

随着计算机技术的发展,出现了许多不同的计算机语言。

这些语言有不同的特点和应用领域。

在本文中,我将介绍一些常见的计算机语言,并根据一些相关数据给出它们的排名。

1. JavaJava是一种广泛使用的计算机语言,它是一种面向对象的编程语言。

Java具有平台无关性,可以在不同的操作系统上运行。

它被广泛应用于企业级应用程序开发、移动应用程序开发和云计算等领域。

根据TIOBE编程语言排行榜数据,Java是目前最流行的计算机语言之一,经常排名前三位。

2. PythonPython是一种简单易学的计算机语言,它具有清晰的语法和强大的功能。

Python广泛应用于科学计算、数据分析、人工智能和机器学习等领域。

Python的可扩展性和丰富的库使其成为开发人员的首选。

根据TIOBE编程语言排行榜数据,Python在过去几年中一直在排名上升,目前经常排名前三位。

3. CC语言是一种低级语言,它具有高效的性能和灵活的特性。

C语言广泛应用于系统开发、嵌入式系统和高性能应用程序开发等领域。

许多现代高级语言都是基于C语言开发的。

虽然C语言的使用范围比较有限,但它仍然是一种重要的计算机语言。

根据TIOBE编程语言排行榜数据,C语言一直在排名前十位之间。

4. C++C++是一种面向对象的编程语言,它是C语言的扩展。

C++具有C语言的高效性和灵活性,同时支持面向对象的编程方法。

C++广泛应用于游戏开发、图形界面设计和科学计算等领域。

根据TIOBE编程语言排行榜数据,C++一直是较受欢迎的计算机语言之一。

5. JavaScriptJavaScript是一种用于网页开发的脚本语言,它使网页具有动态和交互性。

JavaScript也可以用于服务器端开发,例如使用Node.js框架。

JavaScript广泛应用于Web应用程序开发和移动应用程序开发等领域。

根据TIOBE编程语言排行榜数据,JavaScript在过去几年中一直排名较高。

java基于命令行的学生成绩管理系统

java基于命令行的学生成绩管理系统

- -- 《面向对象程序设计与C++》实验报告. 优质专业.备注:1、教师在布置需撰写实验报告的实验前,应先将报告书上的“实验题目”、“实验性质”、“实验目的”、“实验项目容”等项目填写完成,然后再下发给学生。

2、教师在布置需撰写报告的实验项目时,应告知学生提交实验报告的最后期限。

3、学生应按照要求正确地撰写实验报告:1)在实验报告上正确地填写“实验时间”、“实验地点”等栏目。

2)将实验所涉及的源程序文件容(实验操作步骤或者算法)填写在“实验过程或算法(源程序)”栏目中。

3)将实验所涉及源程序调试过程(输入数据和输出结果)或者实验的分析容填写在“实验结果及分析和(或)源程序调试过程”栏目中。

4)在实验报告页脚的“报告创建时间:”处插入完成实验报告时的日期和时间。

5)学生将每个实验完成后,按实验要求的文件名通过网络提交(上载)到指定的服务器所规定的共享文件夹中。

每个实验一个电子文档,如果实验中有多个电子文档(如源程序或图形等),则用WinRAR压缩成一个压缩包文档提交,压缩包文件名同实验报告文件名(见下条)。

6)提交的实验报告电子文档命名为:“组号(2位数字)年级(两位数字不要“级”字)专业(缩写:计算机科学与技术专业(计科)、网络工程专业(网络)、信息安全专业(信息)、物联网工程(物联网))项目组成员(学号(八位数字))实验序号(一位数字).doc。

如第1组完成第1个Project,专业为“计算机科学与技术”专业,项目组成员有:三(学号20115676),四(学号20115676),王五(学号20115676),完成的课程设计报告命名为:01_10计科_20115676三_20115676四_20115676王五1.doc,以后几次实验的报告名称以此类推。

4、教师(或助教)在评价学生实验时,应根据其提交的其他实验相关资料(例如源程序文件等)对实验报告进行仔细评价。

评价后应完成的项目有:1)在“成绩”栏中填写实验成绩。

Java 语言与C 语言代码运行效率比较

Java 语言与C 语言代码运行效率比较

Java 语言与C 语言代码运行效率的比较摘要:计算机技术的不断发展带动了计算机语言的不断改革。

从最初的机器语言到现在的高级语言,计算机语言的每一次变革,都带来了语言的新的变化,运行的效率也逐渐提高。

本文在详细介绍java语言和c语言的基础上对两种语言进行比较,通过运行编辑的程序,利用结果来说明java语言与c语言的运行效率,而通过比较就可以为人们在以后的语言程序设计中提供一些指导性的意见和建议。

关键词:java语言;c语言;代码运行效率中图分类号:tp311.1在计算机语言的发展史上,目前总共是发展了四代计算机语言。

第一代计算机语言是机器语言。

机器语言是计算机的专用语言,在当时是唯一一个可以识别的语言。

后几代计算机语言发展是建立在机器语言的基础上的。

以机器语言为契机并将机器语言逐步进行简化,直到人类可以进行直观的理解掌握。

第二代计算机语言是汇编语言,与机器语言相比,汇编语言进行改革的幅度大大提高,人们在使用时出现错误的几率也降低很多。

虽然汇编语言还是有些复杂,但已经开始用字母来代替许多数码。

第三代计算机语言是高级语言。

高级语言很大程度上考虑了人类的使用习惯,使得在使用时更加便捷。

与汇编语言相比,高级语言复杂程度大大降低,在程序中使用的运算符号以及式子都与平常使用的数学计算公式差不多。

此外,这种高级语言以简单易学,通用性强,程序比较短著称,由于非常符合人类的使用习惯,其应用也在不断增强,是一种理想的程序设计语言。

第四代计算机语言是前几代计算机语言的综合。

它根据每一种语言的特点确定其应用范围。

在程序运行时,只需输入程序的原始数据,然后命令它们执行。

至于程序是怎样执行则由它们本身来决定。

因此,这种语言的变化大大简化了人脑的工作量。

1 java语言的概述作为一种面向对象的程序设计语言,java与c++极为类似,但却要比c++简单的多。

它在集成其他语言的特点和优势的同时又有自己独特的优势。

java的主要特点如下:(1)简单性。

数据结构(C语言版)_第1章 绪论

数据结构(C语言版)_第1章 绪论

2.算法的复杂性分析
算法运行所需要的计算机资源的量,需要的 时间资源的量称作时间复杂度,需要的空间 (即存储器)资源的量称作空间复杂度。
运行算法所需要的时间T写成输入规模n的函数, 记作T(n)。“规模”一般是指输入量的数目,比 如在排序问题中,问题的规模可以是定义为被排 序的元素数目。
算法的描述方法
算法可以用自然语言描述,但由于自然语言表 达算法容易产生二义性,人们常使用专用的算 法描述工具。
图1-6传统流程图符号
图1-7结构化流程图符号
【例1.5】分别用传统流程图和结构化流程图描 述一个算法。 【问题描述】分别用传统流程图和结构化流程 图描述下列问题:给定两个正整数m和n,求最大 公约数。 【分析】将数学中求最大公约数的辗转相除法 的求解过程进行分解,用标准的流程图基本符 号表示成图1-8(a)和(b)图。
表1-1 学生成绩信息表
学号
20120401 20120402 20120403 20120405
姓名
王伟 张译民 陈慧 李彩霞
性别
男 男 女 女
出生年月
1993/01 1993/08 1992/12 1993/05
数学
123 115 108 102
语文
98 108 114 113
英语
90 85 95 90
A
B逻辑结构图
线性结构
• 数据元素之间存在一对一的关系,称为线性结构。该 结构的特点是除第一个元素和最后一个元素外,其它 元素都有且只有一个直接前趋和直接后继。
• 如图1-2所示的线性结构是一种最常见、也是最简单 的数据结构,学生成绩管理系统的数据结构是线性结 构,另外仓库管理、教材管理等系统中处理的数据也 是线性结构。线性结构的基本操作有插入、删除及查 找等,具有线性结构的数据简称为线性表。

Java语言和C语言的相同点与不同点

Java语言和C语言的相同点与不同点

网络天地55摘 要:当前,世界范围内计算机科学技术处于飞速发展中,对于计算机语言的研究也越来越深入,作为最重要的两种计算机编程语言——Java 语言与C 语言,掌握二者之间的异同,对于我国计算机科学技术的进一步深化具有重要意义。

本文针对Java 语言与C 语言从应用领域、特点、开发环境等主要方面,探讨了二者之间的异同。

关键词:Java 语言 C 语言 相同点 不同点Java 语言与C 语言同为计算机编程语言,二者既相互联系又相互区别。

关于Java 语言与C 语言孰优孰劣的争论是不科学且可笑的,二者不存在优劣之分,在计算机编程中都占据着重要地位。

因而在学习和使用Java 语言与C 语言的过程中,应该注意二者有哪些不同点,又有哪些相同点,并通过比较Java 语言与C 语言的异同,更好地掌握二者的实际运用。

1 起源及发展比较Java语言语言由Sun Microsystems公司于1995年推出的面向对象的计算机程序设计语言,Java 语言吸收了C++语言所有优势,同时完善了C++语言原本的缺陷,不仅运用简单便捷,且功能十分的强大。

C语言由美国贝尔实验室的两名计算机程序员B.W.Kernighan和D.M.Ritchit,共同研究提出的。

C 语言标准是由USA 标准学会所于1983年制定并发表,通常被称之为ANSL C,是影响最为深远、运用最为广泛的设计语言。

2 特点及优势比较2.1 Java 语言特点Java 语言的特点及优势可总结为:面向对象、使用简洁、多平台性、安全性高、可解释执行、呈分布式结构等。

Java 语言的多平台性特点及优势,使其可应用于不同的计算机操作平台,其数据类型不受限于机器。

运用Java 语言内存分配是由操作系统来完成,可有效地防止病毒侵入,大大提升安全性。

此外,Java 语言还可将安全管理器提供给不同程序,从而避免出现非法访问的情况。

Java 语言是面向对象的设计语言,因而可将类与数据一起进行封装,并运用类的优势,使程序的维护性与间接性更高。

初级程序员下午模拟试题及答案解析(15)

初级程序员下午模拟试题及答案解析(15)

初级程序员下午模拟试题及答案解析(15)(1~7/共20题)填空题阅读以下说明和Java代码,将应填入______处的语句或语句成分写在对应栏内。

[说明]某数据文件students.txt的内容为100名学生的学号和成绩,下面的程序将文件中的数据全部读入对象数组,按分数从高到低进行排序后选出排名前30%的学生。

[Java代码]import java.io.*;class Student{private String sNO;//学号private int Credit;//分数public int getCredit(){return Credit;}public string toString(){return"sNO="+this.sNO+",Credit="+this.Credit;}Student(String sNO,int Credit){______=sNO;______=Credit;}}public class SortStudent{void sort(Student[]s){//Sort the array s[] in decending order of Creditfor(int i=0;i<s.length-1;i++){for(int j=i+1:j<s.length;j++){if(s[i].______<s[j].______){Student tmp=s[i];s[i]=s[j];s[j]=tmp;}}}}public static void main(String argv[]){Student[] testStudent=new Student[size];try{BufferedReader in=new BufferedReader(new FileReader("students.txt"));boolean done=false;int i=0;while(!done){String s=in.readLine(); //每次读取一个学生的学号和成绩if(s!=null){String tmp[]=s.split(",");testStudent[i++]=______(tmp[0],Integer.parselnt(tmp[1]));}elsedone=true;}in.closeo();______=new SortStudent();ss.sort(testStudent);System.out.printin("top 30%:");for(int j=0;j<size*0.3;j++)System.out.printin(testStudent[j]);}catch(IOException e){System.out.printin("io error!");}catch(NumberFormatException e){System.out.printin("not a number!");}}______int size=100; //学生总数}第1题第2题第3题第4题第5题第6题第7题下一题(8~9/共20题)填空题【函数1.2说明】函数merge(int a[],int n,int b[],int m,int *c)是将两个从小到大有序数组a和b复制合并出一个有序整数序列c,其中形参n和m分别是数组a和b的元素个数。

PAT1004.成绩排名(20)JAVA

PAT1004.成绩排名(20)JAVA

PAT1004.成绩排名(20)JAVA读⼊n名学⽣的姓名、学号、成绩,分别输出成绩最⾼和成绩最低学⽣的姓名和学号。

输⼊格式:每个测试输⼊包含1个测试⽤例,格式为第1⾏:正整数n第2⾏:第1个学⽣的姓名学号成绩第3⾏:第2个学⽣的姓名学号成绩... ... ...第n+1⾏:第n个学⽣的姓名学号成绩其中姓名和学号均为不超过10个字符的字符串,成绩为0到100之间的⼀个整数,这⾥保证在⼀组测试⽤例中没有两个学⽣的成绩是相同的。

输出格式:对每个测试⽤例输出2⾏,第1⾏是成绩最⾼学⽣的姓名和学号,第2⾏是成绩最低学⽣的姓名和学号,字符串间有1空格。

输⼊样例:3Joe Math990112 89Mike CS991301 100Mary EE990830 95输出样例:Mike CS991301Joe Math990112主要练习容器排序。

1 import ng.reflect.Array;2 import java.util.ArrayList;3 import java.util.Arrays;4 import java.util.Collections;5 import java.util.List;6 import java.util.Scanner;7/**8 * 使⽤容器⾃定义排序9 * @author China10 *11*/1213public class Main {14public static void main(String[] args) {15 List<Student> stds = new ArrayList<Student>();16 Scanner input = new Scanner(System.in);17int num = Integer.parseInt(input.nextLine());18while(num>0){19 String str = input.nextLine();20//System.out.println(str);21 String[] temp = str.split("");22 Student std = new Student();23 = temp[0];24 std.stuId = temp[1];25 std.score = Integer.parseInt(temp[2]);26 stds.add(std);27 num--;28 }29 Collections.sort(stds);30 System.out.println(stds.get(0).name+""+stds.get(0).stuId);31 System.out.println(stds.get(stds.size()-1).name+""+stds.get(stds.size()-1).stuId);32 }3334 }35class Student implements Comparable<Student>{36 String name;37 String stuId;38int score;39 @Override40public String toString() {41return"Student [name=" + name + ", stuId=" + stuId + ", score=" + score + "]";42 }43 @Override44public int compareTo(Student o) {45// TODO Auto-generated method stub46return -(score-o.score);47 }4849 }。

C++课程设计 学生成绩排名系统

C++课程设计  学生成绩排名系统

i++ N
输入 i=0 j=n-1
i<a Y
j>i Y
i++ N
stu[j].mscore >stu[j].msco re stu[j-1].numY
>> 输入 s
S=stu[j]; j++
stu[j]= stu[j-1]; stu[j-1]=s;j++
输入 i=0 j=0
i<a Y
j>i Y
stu[j].escore> stu[j-1].escore
流程图:
主菜单
输入 i=0 Y
i<n Y
stu[i].total=stu[i].cscore+stu[i]. mscore+stu[i].escore
输出 stu【i】.total
输出 stu【i】.total/3
i++
i++
输入 min
输入 r
min=stu【0】.total 输入 i=0
stu【i】>=60 i<n
2) 总体设计:包括模块说明、模块结构图和系统流程图;
3) 详细设计:包括主要功能模块的算法设计思路以及对应的工作流程图;
4) 源程序代码及设计成果:完整源程序清单和设计成果;
5)总结: 调试分析过程描述:包括测试数据、测试输出结果以及对程序调试过程中存在问题的思考(列出 主要问题的出错现象、出错原因、解决方法及效果等)包括课程设计过程中的学习体会与收获、对 C++和本 次课程设计的认识等内容.;
cout<<"
**

c语言学生成绩排序

c语言学生成绩排序

50 学生‎成绩排序‎成绩: ‎10 / ‎折扣: 0‎.8‎‎大家参加了‎期末考试,‎成绩出来后‎老师要对‎n个学生‎进行成绩汇‎总和排序。

‎要求程序按‎成绩降序进‎行排序。

在‎排序过程中‎对于成绩相‎同的学生,‎要按照输入‎数据的顺序‎进行排列。

‎例如:有5‎名学生的成‎绩:zh‎a ng1,‎90zh‎a ng2,‎91zh‎a ng3,‎99zh‎a ng4,‎91zh‎a ng5,‎98‎则排序结果‎应该为:‎z hang‎3,99‎z hang‎5,98‎z hang‎2,91‎z hang‎4,91‎z hang‎1,90‎请注意‎例题中“z‎h ang2‎”和“zh‎a ng4”‎的排列顺序‎。

输‎入:‎第一行‎为将要输入‎的学生数量‎n‎从第二行‎起后面连续‎n 行数‎据,每行为‎一名学生的‎姓名(长度‎不超过20‎个字符,不‎包括空格)‎,考试成绩‎(int)‎输出‎:‎排序后的‎结果。

每行‎为一名学生‎的姓名和成‎绩。

‎‎测试输入‎期待的‎输出时‎间限制‎内存限制‎额外进程‎测‎试用例 1‎以文本‎方式显示‎1.5?‎2.zha‎n g1,9‎0?3.‎z hang‎2,91?‎4.zh‎a ng3,‎99?5‎.zhan‎g4,91‎? 6.z‎h ang5‎,98?‎以文本‎方式显示‎1.zha‎n g3,9‎9?2.‎z hang‎5,98?‎3.zh‎a ng2,‎91?4‎.zhan‎g4,91‎? 5.z‎h ang1‎,90?‎1秒‎64M‎0 ‎测‎试用例 2‎以文本‎方式显示‎1.5?‎2.zha‎n g31,‎90? 3‎.zhan‎g51,9‎0?4.‎z hang‎2,90?‎5.zh‎a ng42‎,90? ‎6.zha‎n g1,9‎0?‎以文本方式‎显示1.‎z hang‎31,90‎?2.z‎h ang5‎1,90?‎3.zh‎a ng2,‎90?4‎.zhan‎g42,9‎0?5.‎z hang‎1,90?‎1秒‎64‎M0‎‎测试用例‎3以文‎本方式显示‎1.1?‎2.wa‎n g,10‎0?‎以文本方式‎显示1.‎w ang,‎100?‎1秒‎64M‎0 ‎‎开启时间‎201‎2年05月‎21日‎星期一 1‎2:00 ‎折扣‎时间2‎012年0‎5月 30‎日星期三‎23:5‎5‎关闭时间‎2012‎年06月3‎日星期日‎23:5‎5‎允许迟交:‎是‎#‎i nclu‎d e<st‎d io.h‎>#in‎c lude‎<stri‎n g.h>‎#inc‎l ude<‎m ath.‎h>ty‎p edef‎stru‎c t st‎u dent‎{in‎t sco‎r e;c‎h ar n‎a me[2‎0];}‎s tude‎n t;v‎o id s‎w ap(s‎t uden‎t * s‎1,stu‎d ent ‎* s2)‎{ch‎a r na‎m etem‎p[20]‎;str‎c py(n‎a mete‎m p,s1‎->nam‎e);s‎t rcpy‎(s1->‎n ame,‎s2->n‎a me);‎strc‎p y(s2‎->nam‎e,nam‎e temp‎);in‎t tem‎p;te‎m p=s1‎->sco‎r e;s‎1->sc‎o re=s‎2->sc‎o re;‎s2->s‎c ore=‎t emp;‎}vo‎i d so‎r t(st‎u dent‎stu[‎],int‎n){‎int ‎i,j;‎f or(i‎=0;i<‎n;i++‎)for‎(j=0;‎j<n-1‎;j++)‎{if‎(stu[‎j].sc‎o re<s‎t u[j+‎1].sc‎o re)‎{swa‎p(&st‎u[j],‎&stu[‎j+1])‎;}e‎l se i‎f(stu‎[j].s‎c ore=‎=stu[‎j+1].‎s core‎) {i‎f(str‎c mp(s‎t u[j]‎.name‎,stu[‎j+1].‎n ame)‎>0) {‎swap‎(&stu‎[j],&‎s tu[j‎+1]);‎}}‎}}v‎o id i‎n put(‎s tude‎n t * ‎s){‎c har ‎s trin‎g[30]‎;get‎s(str‎i ng);‎int ‎n,i,j‎;n=s‎t rlen‎(stri‎n g);‎f or(i‎=0;i<‎n;i++‎){i‎f(str‎i ng[i‎]==',‎'){s-‎>name‎[i]='‎\0';b‎r eak;‎}s->‎n ame[‎i]=st‎r ing[‎i];}‎s->s‎c ore=‎0;in‎t tem‎p;j=‎n-(i+‎1)-1;‎for(‎i++;i‎<n;i+‎+,j--‎){t‎e mp=(‎i nt)s‎t ring‎[i]-4‎8;s-‎>scor‎e= s-‎>scor‎e+ te‎m p *(‎i nt)p‎o w(10‎.0,j)‎; }}‎void‎main‎(){‎i nt n‎,i;s‎t uden‎t stu‎[20];‎scan‎f("%d‎\n",&‎n);f‎o r(i=‎0;i<n‎;i++)‎{in‎p ut(&‎s tu[i‎]);}‎sort‎(stu,‎n);f‎o r(i=‎0;i<n‎;i++)‎{pr‎i ntf(‎"%s,%‎d\n",‎s tu[i‎].nam‎e,stu‎[i].s‎c ore)‎; }‎}‎。

C++程序设计成绩排名次

C++程序设计成绩排名次

C++程序设计成绩排名次成绩排名次某班期末考试科目为数学(MT)、英语(EN)和物理(PH),有最多不超过30人参加考试。

要求:(1)计算每个学生的总分和平均分;(2)按总分成绩由高到低排出成绩的名次;(3)打印出名次表,表格内包括学生编号、各科分数、总分和平均分;(4)任意输入一个学号,能够查找出该学生在班级中的排名及其考试分数编程要求:1.较好的用户输入输出提示信息2.使用子函数来实现上述各个功能3.必须用结构体数组实现提示:设计好存放学生信息的结构体,方便编程。

用函数编程实现计算每个学生的总分;用函数编程实现按总分由高到低对学生成绩排序用函数编程实现查找学号为k的学生在班级中的排名名次及相关成绩等信息,找不到时返回-1值程序代码如下:#include#includeusing namespace std;struct student{char NAME[20];//名字long NUM;//学号double MT;//数学double EN;//英语double PH;//物理double sum;//总分};int ReadScore(student stu[])//输入名字———成绩{int count=0;//人数cout.setf(ios::right);cout<<"名字"<<setw(5);< p="">cout<<"学号"<<setw(5);< p="">cout<<"数学"<<setw(5);< p="">cout<<"英语"<<setw(5);< p="">cout<<"物理"<<setw(5);< p="">cout<<endl;< p="">for(int i=0;i<30;i++){cin>>stu[i].NAME>>stu[i].NUM>>stu[i].MT>>stu[i].EN>>st u[i].PH;if(stu[i].MT<=0)break;count++;}return count;}int GetSum(student stu[],int n){double Sum=0;for(int i=0;i<n;i++)< p="">{stu[i].sum=0;stu[i].sum=stu[i].MT+stu[i].EN+stu[i].PH; //总分}Sum=stu[i].sum;return Sum;}void print_1(student stu[],int n)//打印学生成绩表{for(int m=n-1;m>0;m--){int max=0;char name[20];//姓名long num=0;//学号double mt=0;//数学double en=0;//英语double ph=0;//物理for(int i=0;i<="">{if(stu[i].sum<stu[i+1].sum)< p="">{strcpy(name,stu[i].NAME);strcpy(stu[i].NAME,stu[i+1].NAME);strcpy(stu[i+1].NAME,name);num=stu[i].NUM;stu[i].NUM=stu[i+1].NUM;stu[i+1].NUM=num;mt=stu[i].MT;stu[i].MT=stu[i+1].MT;stu[i+1].MT=mt;en=stu[i].EN;stu[i].EN=stu[i+1].EN;stu[i+1].EN=en;ph=stu[i].PH;stu[i].PH=stu[i+1].PH;stu[i+1].PH=ph;max=stu[i].sum;stu[i].sum=stu[i+1].sum;stu[i+1].sum=max;}}}cout.setf(ios::left);cout<<"总成绩表:"<<endl;< p=""> cout<<"排名"<<setw(5);< p=""> cout<<"姓名"<<setw(5);< p=""> cout<<"学号"<<setw(5);< p=""> cout<<"总分"<<setw(5);< p=""> cout<<"高数"<<setw(5);< p=""> cout<<"英语"<<setw(5);< p=""> cout<<"物理"<<setw(5);< p=""> cout<<"平均分"<<endl;< p="">for(int j=0;j<n;j++)< p="">{cout.setf(ios::left);cout<<j+1<<setw(5);< p="">cout<<stu[j].name<<setw(5);< p=""> cout<<stu[j].num<<setw(5);< p=""> cout<<stu[j].sum<<setw(5);< p=""> cout<<stu[j].mt<<setw(5);< p=""> cout<<stu[j].en<<setw(5);< p=""> cout<<stu[j].ph<<setw(5);< p="">cout<<<endl;<="" p="">}}int find(student stu[],int n){int a=0,b=0;long num;cin>>num;for(int j=0;j<n;j++)< p=""> {if(num==stu[j].NUM){b++;a++;}}if(b!=0){cout.setf(ios::left);cout<<"排名"<<setw(5);< p=""> cout<<"姓名"<<setw(5);< p=""> cout<<"学号"<<setw(5);< p=""> cout<<"总分"<<setw(5);< p=""> cout<<"高数"<<setw(5);< p=""> cout<<"英语"<<setw(5);< p=""> cout<<"物理"<<setw(5);< p=""> cout<<"平均分"<<endl;< p=""> }for(int i=0;i<n;i++)< p=""> {if(num==stu[i].NUM){cout.setf(ios::left);cout<<i+1<<setw(5);< p="">cout<<stu[i].name<<setw(5);< p="">cout<<stu[i].num<<setw(5);< p="">cout<<stu[i].sum<<setw(5);< p="">cout<<stu[i].mt<<setw(5);< p="">cout<<stu[i].en<<setw(5);< p="">cout<<stu[i].ph<<setw(5);< p="">cout<<<endl;<="" p="">}}if(a==0){cout<<"查无此人!请重新输入:";return -1;}}int main(){student stu[30];float a;a=ReadScore(stu);cout<<"================================= =============="<<endl;< p="">GetSum(stu,a);for(int i=0;i<a;i++)< p="">{cout.setf(ios::left);cout<<"姓名"<<stu[i].name<<setw(5);< p="">cout<<"数学"<<stu[i].mt<<setw(5);< p="">cout<<"英语"<<stu[i].en<<setw(5);< p="">cout<<"物理"<<stu[i].ph<<endl;< p="">}cout<<"总人数:"<<a<<endl;< p="">cout<<"================================= =============="<<endl;< p="">print_1(stu,a);cout<<"================================= =============="<<endl;< p="">cout<<endl<<"请输入要查找的学号:";< p="">find(stu,a);cout<<endl;< p="">return 0;}</endl;<></endl<<"请输入要查找的学号:";<></endl;<></endl;<></a<<endl;<></stu[i].ph<<endl;<></stu[i].en<<setw(5);<></stu[i].mt<<setw(5);<></stu[i].name<<setw(5);<></a;i++)<></endl;<></stu[i].ph<<setw(5);<></stu[i].en<<setw(5);<></stu[i].mt<<setw(5);<></stu[i].sum<<setw(5);<> </stu[i].num<<setw(5);<> </stu[i].name<<setw(5);<> </i+1<<setw(5);<></n;i++)<></endl;<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></n;j++)<></stu[j].ph<<setw(5);<> </stu[j].en<<setw(5);<></stu[j].mt<<setw(5);<> </stu[j].sum<<setw(5);<> </stu[j].num<<setw(5);<> </stu[j].name<<setw(5);<> </j+1<<setw(5);<></n;j++)<></endl;<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></endl;<></stu[i+1].sum)<> </n;i++)<></endl;<></setw(5);<></setw(5);<></setw(5);<></setw(5);<></setw(5);<>。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

//copyright © huainan normal university 电子信息科学与技术2班王中宝(本人刚学java,能力有限,未作出图形化界面请大家谅解)
import java.util.Scanner;
class test8{
public static void main(String[] args){
//学生数、科目数。

控制变量i、j。

int a,b,i,j;
//学生数和学生成绩
Scanner shuru=new Scanner(System.in);
System.out.println("请输入学生人数");
a=shuru.nextInt();
String[] students= new String[a];
for(i=1;i<=a;i++){
System.out.println("请输入第"+i+"个学生的姓名");
students[i-1]=shuru.next();
}
//科目数和科目名称
System.out.println("请输入科目数");
b=shuru.nextInt();
String[] kemu= new String[b];
for(i=1;i<=b;i++){
System.out.println("请输入第"+i+"门科目名称");
kemu[i-1]=shuru.next();
}
//输入对应人的对应科目成绩
int[][] chengji=new int[a][b];
for(i=1;i<=a;i++){
for(j=1;j<=b;j++){
System.out.println("请输入"+students[i-1]+"的"+kemu[j-1]+"成绩");
chengji[i-1][j-1]=shuru.nextInt();
}
}
/*for(i=1;i<=a;i++){
for(j=1;j<=b;j++){
System.out.println(students[i-1]+"的"+kemu[j-1]+"成绩为"+chengji[i-1][j-1]);
}
}*/
//原样打印
System.out.print("\n");
System.out.println(" ******xx班成绩表(原表)******");
System.out.print(" ☆\t");
for(i=1;i<=b;i++){
System.out.print(kemu[i-1]+"\t");
}
System.out.print("\n");
for(i=1;i<=a;i++){
System.out.print(students[i-1]+"\t");
for(j=1;j<=b;j++){
System.out.print(chengji[i-1][j-1]+"\t");
}
System.out.print("\n");
}
//求每个人的总分
int[] sum=new int[a];
for(i=0;i<a;i++){
for(j=0;j<b;j++){
sum[i]+=chengji[i][j];
}
}
//降序排列
int t;
String s;
int[] score=new int[b];
for(i=0;i<a-1;i++){
for(j=0;j<a-i-1;j++){
if(sum[j]<sum[j+1]){
{t=sum[j];sum[j]=sum[j+1];sum[j+1]=t;}
{s=students[j];students[j]=students[j+1];students[j+1]=s;}
{score=chengji[j];chengji[j]=chengji[j+1];chengji[j+1]=score;} }
}
}
//排序后的输出
System.out.print("\n");
System.out.print("\n");
System.out.println(" ******xx班成绩表(排序后)******");
System.out.print(" ☆\t");
for(i=1;i<=b;i++){
System.out.print(kemu[i-1]+"\t");
}
System.out.print("总分"+"\t");
System.out.print("名次");
System.out.print("\n");
for(i=1;i<=a;i++){
System.out.print(students[i-1]+"\t");
for(j=1;j<=b;j++){
System.out.print(chengji[i-1][j-1]+"\t");
}
System.out.print(sum[i-1]+"\t");
System.out.print(i);
System.out.print("\n");
}
//使bat停留在以上结果面
int deng;
deng=shuru.nextInt();
}
}
以下为运行时截图(运行前请配置下jdk运行环境,具体请搜索下互联网):。

相关文档
最新文档