精华内容
下载资源
问答
  • C语言 成绩排序

    千次阅读 2019-08-27 21:13:29
    查找和排序 题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩 都按先录入排列在前的规则处理。 示例: jack 70 peter 96 Tom 70 smith 67 从高到低 成绩 peter 96 jack 70 Tom 70 ...

    题目描述:
    查找和排序
    题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩
    都按先录入排列在前的规则处理。
    示例:
    jack 70
    peter 96
    Tom 70
    smith 67
    从高到低 成绩
    peter 96
    jack 70
    Tom 70
    smith 67
    从低到高
    smith 67
    jack 70
    Tom 70
    peter 96
    输入描述:
    输入多行,先输入要排序的人的个数,然后输入排序方法0(降序)或者1(升序)再分别输入他们的名字和成绩,以一个空格隔开
    输出描述:
    按照指定方式输出名字和成绩,名字和成绩之间以一个空格隔开
    示例1
    输入

    复制
    3
    0
    fang 90
    yang 50
    ning 70
    输出

    复制
    fang 90
    ning 70
    yang 50

    #include<stdio.h>
    #include<string.h>
    typedef struct Student{
        char a[10];
        int b;
    }Student;
    Student stu[1000];
    int jiang(int n)
    {
        int i,j;
        for(i=0;i<n;i++)
            for(j=0;j<n-i-1;j++)
            {
                if(stu[j].b<stu[j+1].b)
                {
                    stu[999]=stu[j];
                    stu[j]=stu[j+1];
                    stu[j+1]=stu[999];
                }
            }
        for(i=0;i<n;i++)
        {
            printf("%s %d\n",stu[i].a,stu[i].b);
        }
        return 0;
    }
     
    int sheng(int n)
    {
        int i,j;
        for(i=0;i<n;i++)
            for(j=0;j<n-i-1;j++)
            {
                if(stu[j].b>stu[j+1].b)
                {
                    stu[999]=stu[j];
                    stu[j]=stu[j+1];
                    stu[j+1]=stu[999];
                }
            }
        for(i=0;i<n;i++)
        {
            printf("%s %d\n",stu[i].a,stu[i].b);
        }
        return 0;
    }
    int main()
    {
        int n,m,i;
        while(~scanf("%d%d",&n,&m))
        {
            for(i=0;i<n;i++)
                scanf("%s%d",&stu[i].a,&stu[i].b);
            if(m==0)
               jiang(n);
            if(m==1)
                sheng(n);
        }
        return 0;
    }
    
    
    展开全文
  • 查找和排序 题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩 都按先录入排列在前的规则处理。 示例: jack70 peter96 Tom70 smith67 从高到低成绩 peter96 jack70 Tom70 smith...

     

    题目描述

    查找和排序

    题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩
    都按先录入排列在前的规则处理。

    示例:
    jack      70
    peter     96
    Tom       70
    smith     67

    从高到低  成绩 
    peter     96 
    jack      70 
    Tom       70 
    smith     67

    从低到高

    smith     67

    jack      70 
    Tom      70 
    peter     96

    输入描述:

    
     

    输入多行,先输入要排序的人的个数,然后输入排序方法0(降序)或者1(升序)再分别输入他们的名字和成绩,以一个空格隔开

    输出描述:

    按照指定方式输出名字和成绩,名字和成绩之间以一个空格隔开

    示例1

    输入

    复制

    3
    0
    fang 90
    yang 50
    ning 70

    输出

    复制

    fang 90
    ning 70
    yang 50

     

    #include<stdio.h>
    typedef struct{
        char name[10];
        int grade;
    }student;
    int main()
    {
        int n,flag,i,j;
        while(scanf("%d",&n)!=EOF)
        {
            student stu[1000],temp;
            scanf("%d",&flag);
            for(i=0;i<n;i++)
                 scanf("%s%d",stu[i].name,&stu[i].grade);
            for(i =0;i<n-1;i++){
                for( j = 0;j<n-i-1;j++){
                    if(flag==0){
                       if(stu[j].grade<stu[j+1].grade){
                        temp = stu[j+1];
                        stu[j+1] = stu[j];
                        stu[j] = temp;
                         }
                       }
                    if(flag==1){
                       if(stu[j].grade>stu[j+1].grade)
                       {
                        temp = stu[j+1];
                        stu[j+1] = stu[j];
                        stu[j] = temp;
                      }
                    }
                }
            }
            for(int i =0;i<n;i++)
                 printf("%s %d\n",stu[i].name,stu[i].grade);

        }
    }

     

    展开全文
  • C语言成绩数组排序

    2020-12-26 19:09:23
    子函数中对30个成绩排序; #include<stdio.h> #define N 30 int main() { int ans[N],i; int fac(int ans[]); for(i=0; i<N; i++) scanf("%d",&ans[i]); fac(ans); for(i=0; i<N; i++) ...

    由键盘输入30名同学的成绩,按成绩由高到低去排序并输出排序后的成绩。
    主函数输入30名学生的成绩,输出排序后的成绩;
    子函数中对30个成绩排序;

    #include<stdio.h>
    #define N 30
    int main() {
    	int ans[N],i;
    	int fac(int ans[]);
    	for(i=0; i<N; i++)
    		scanf("%d",&ans[i]);
    	fac(ans);
    	for(i=0; i<N; i++)
    		printf("%4d",ans[i]);
    	printf("\n");
    	return 0;
    }
    int fac(int ans[]) {
    	int i,j,t;
    	for(i=0; i<N-1; i++)
    		for(j=0; j<N-1-i; j++)
    			if(ans[j]<ans[j+1]) {
    				t=ans[i];
    				ans[j]=ans[j+1];
    				ans[j+1]=t;
    			}
    }
    

    小剧场:秘密在此被淹没。The secret is drowned here.

    展开全文
  • 问题描述:学生成绩排序。输入n(n<50)个学生的成绩排名,按照学生平均成绩从高到低输出他们的信息源代码:/*学生成绩排序*//*输入n(n<50)个学生的成绩排名,按照学生平均成绩从高到低输出他们的信息*/#...

    问题描述:学生成绩排序。输入n(n<50)个学生的成绩排名,按照学生平均成绩从高到低输出他们的信息

    源代码:

    /*学生成绩排序*/

    /*输入n(n<50)个学生的成绩排名,按照学生平均成绩从高到低输出他们的信息*/

    #include

    struct student{

    int num;

    char name[10];

    int computer,english,math;

    double average;

    };

    int main(void)

    {

    int i,index,j,n;

    struct student students[50],temp;/*定义结构数组*/

    /*输入*/

    printf("Input n:");

    scanf("%d",&n);

    for(i=0;i

    printf("Input the info of No.%d:\n",i+1);

    printf("number:");

    scanf("%d",&students[i].num);

    printf("name:");

    scanf("%s",students[i].name);

    printf("computer score:");

    scanf("%d",students[i].computer);

    printf("english score:");

    scanf("%d",students[i].english);

    printf("math score:");

    scanf("%d",students[i].math);

    students[i].average=(students[i].computer+students[i].english+students[i].math)/3.0;

    }

    /*结构数组排序,选择排序法*/

    for(i=0;i

    index=i;

    for(j=i+1;j

    if(students[j].average>students[i].average);

    index=j;

    temp=students[index];

    students[index]=students[i];

    students[i]=temp;

    }

    /*输出排序后的信息*/

    printf("num \t name \t average \n");

    for(i=0;i

    printf("%d\t%s\t%.2lf\n",students[i].num,students[i].name,students[i].average);

    return 0;

    }

    运行结果:

    3972d8fe86f2

    学生成绩排序

    注意事项:

    一个结构变量只能表示一个实体的信息,如果有许多相同类型的实体,就需要使用结构数组。

    程序参数:

    输出大小: 151.6787109375 KiB

    编译时间: 0.31s

    展开全文
  • C语言 冒泡排序(成绩排序实例)

    千次阅读 2020-05-04 22:33:44
    任意输入一组正整数数据,以负数结尾,使用冒泡排序进行从大到小排序 具体代码如下 #include <stdio.h> int main() { int num[40]={0},i,j,t,n=0; scanf("%d",&num[n]); while(num[n]>=0){ n++; ...
  • C语言程序成绩排序

    2012-11-23 01:12:45
    这是一个C语言程序,用以给学生成绩算总分和平均分,并且按照总分平均分高到底排序
  • C语言-成绩排序

    2019-07-24 12:44:26
    C语言-成绩排序题目来源代码 题目来源 厦门大学在线评测系统 2018级C语言程序设计实验课1397号试题 代码 #include<stdio.h> struct stu { long int nu; int sco[6]; int no; }; int main() { struct stu...
  • 满意答案WAS1231232015.05.25采纳率:52%等级:8已帮助:860人123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263#include<...
  • 成绩排序系统(练习排序算法和复习C语言)实验一一、实验目的1.回顾C语言中的输入、输出及结构体等相关知识点;2.回顾函数的使用;3.掌握插入排序、交换排序、选择排序中的常用排序的算法思想;4.掌握插入排序、交换...
  • #include#include#include#define RANDOM(i) (rand()%i)#define N9 //设置数组长度//分区操作int Partition(int array[], int left, int right){int i,j;int temp;j = left-1;for (i=left; i<...
  • 先按成绩升序排,成绩相同则按名字字母序升序排,再相同的话按年龄升序排。参考代码:#include#include#includetypedefstructStu{charname[101];intage;intscore;}Stu;intcmp(constvoid*a,constvoid*b){Stu*c=(Stu*)a...
  • i { printf("请输入第%d个学生的“姓名 课程名称 成绩”:", i + 1); scanf_s("%s%s%f", na,_countof(na), sc,_countof(sc),&sco, 30);//scanf_s()用法查阅msdn._countof()需要头文件stdlib.h strcpy_s(stu[i].name...
  • 问题 B: C语言-成绩排序 时间限制:1Sec内存限制:128 MB 提交:1000解决:617 [提交] [状态] [命题人:外部导入] 题目描述 现有有N个学生的数据记录,每个记录包括学号、姓名、三科成绩。 编写一个函数input,用来输入...
  • <p style="text-align:center"><img alt="" src="https://img-ask.csdnimg.cn/upload/1623552254688.jpg" /></p> 如图,求大神解答呜呜呜急求</p>
  • c语言中平均成绩排序

    2021-06-24 16:51:43
    学生有学号,5门课成绩,以及平均分成绩,按平均分排列名次,若平均分相同则名次并列;结果屏幕输出并写入文件(file1——按学号排序;file2——按名次排序
  • 1、排序:重排表中元素。2、根据数据元素是否完全在内存中,将排序算法分为内部排序和外部排序两类。3、插入排序:将一个待排序记录按关键字大小插入到前面已排好的子序列中,直到全部记录插入完成。1)直接插入排序...
  • 题目描述查找和排序题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩都按先录入排列在前的规则处理。示例:jack70peter96Tom70smith67从高到低成绩peter96jack70Tom70smith67从低到...
  • 解题思路:注意事项:注意姓名字符串的长度要大于8,因为这个调了很多次参考代码:#include#include#includeusingnamespacestd;structstudent{intnumber;charname[9];intscore;}buf[100000];boolcmp1(studenta,studentb...
  • C语言对学生成绩排序

    千次阅读 2020-07-17 12:22:38
    特此附上代码,便于查看和学习 ... //定义一个数组来保存学生姓名和成绩 float mark[100],fTemp; int i,j,iNum; puts("请输入学生数"); scanf("%d",&iNum); puts("请分别输入姓名和成绩"); f
  • #include "stdafx.h"#include#include#includeusing namespace std;struct student{string name;//姓名int math;...//控制排序规则bool compare(student a, student b){if (c == 0)//按照姓名递增排序...
  • 成绩排序C语言

    万次阅读 2018-03-12 11:07:21
    #include &lt;stdio.h&gt; #include &lt;string.h&gt; int main() { int total = 0,i = 0,j = 0; int model = 0,temp = 0; int data[100]; char name[100][100],var[100];...to...
  • C语言排序

    2020-09-28 21:29:51
    C语言:桶排序 比如十分制的成绩排名 首先需要对数组进行初始化,全部赋为0(表示0到10分值暂时没有出现过) 然后用for循环来输入值(分数) 将输入的分数的赋给数组下标 那么所对应的值加一(表示该分数出现一次) ...
  • 用希尔排序法对一组数据由小到大进行排序,数据分别为 69、56、12、136、3、55、46、 99、88、25。实现过程:(1)自定义函数 shsort(),实现希尔排序。(2) main() 函数作为程序的入口函数。程序代码如下:#include ...
  • 1. 学生成绩排序系统简介 学生成绩排序系统可实现学生信息输入、学生信息输出、学生信息查询、学生成绩排序等功能。程序要求提供简单友好易于操作的界面。程序以C语言开发。 2.学生成绩管理系统基本要求: 假设有5名...
  • C语言 1206: 单科成绩排序(结构体专题) 题目描述 有一学生成绩表,包括学号、姓名、3门课程成绩。请按要求排序输出:若输入1,则按第1门课成绩降序输出成绩表,若输入为i(1<=i<=3),则按第i门课成绩降序...
  • 满意答案fp7675推荐于 2016.10.30采纳率:48%等级:11已帮助:4525人#includestructstd//定义学生结构体,包含学好number,成绩score,名次mc{intnumber;intscore;intmc;};#defineN100intmain(){inti,j,max,num;...
  • c语言成绩管理系统拥有和hello word一样的江湖地位,初学C语言的朋友基本都会从管理系统开始入手学习,对于很多大学生来说更是如此,今天为大家带来的这款系统以及源码希望能对大家学习学C语言有所帮助,欢迎下载...
  • C语言结构体排序

    2019-10-04 05:53:52
    定义学生信息结构体和结构体数组,包括...按照学号和平均成绩排序,并输出学生信息 1 //输入学生分数信息,学号排序和平均分排序后输出 2 3 #include <stdio.h> 4 5 struct student{ 6 ...
  • #includeusing namespace std;struct student{string name;//姓名int math;...//控制排序规则bool compare(student a, student b){if (c == 0)//按照姓名递增排序{return (a.name<=b.name);}else i...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,520
精华内容 5,408
关键字:

c语言成绩排序

c语言 订阅