欢迎来到天天文库
浏览记录
ID:61956324
大小:613.50 KB
页数:196页
时间:2021-04-01
《算法题目及答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.题目描述:对输入的n个数进行排序并输出。输入:输入的第一行包括一个整数n(1<=n<=100)。接下来的一行包括n个整数。输出:可能有多组测试数据,对于每组数据,将排序后的n个整数输出,每个数后面都有一个空格。每组测试数据的结果占一行。样例输入:41432样例输出:1234#include#include#includeusingnamespacestd;intmain(){intn;while(cin>>n&&n>=1&&n<=100){vector
2、ivec;intitemp;for(inti=0;i>itemp;ivec.push_back(itemp);}sort(ivec.begin(),ivec.end());for(vector::iteratorj=ivec.begin();j!=ivec.end();j++)cout<<*j<<'';cout<3、,并输出N个学生排序后的信息。输入:测试数据有多组,每组输入第一行有一个整数N(N<=1000),接下来的N行包括N个学生的数据。每个学生的数据包括姓名(长度不超过100的字符串)、年龄(整形数)、成绩(小于等于100的正数)。输出:将学生信息按成绩进行排序,成绩相同的则按姓名的字母序进行排序。然后输出学生信息,按照如下格式:姓名年龄成绩样例输入:3abc2099bcd1997bed2097样例输出:bcd1997bed2097abc2099#include#includes4、tructstudent{charname[101];intage;intscore;};intmain(){intn,i,j;structstudenta[1000],temp;while(scanf("%d",&n)!=EOF){for(i=0;ia[j].score){temp=a[j-15、];a[j-1]=a[j];a[j]=temp;}elseif(a[j-1].score==a[j].score){if(strcmp(a[j-1].name,a[j].name)>0){temp=a[j-1];a[j-1]=a[j];a[j]=temp;}elseif(strcmp(a[j-1].name,a[j].name)==0){if(a[j-1].age>a[j].age){temp=a[j-1];a[j-1]=a[j];a[j]=temp;}}}}}for(i=0;i6、s%d%d",a[i].name,a[i].age,a[i].score);}}return0;}4.题目描述:输入一系列整数,将其中最大的数挑出,并将剩下的数进行排序。输入:输入第一行包括1个整数N,1<=N<=1000,代表输入数据的个数。接下来的一行有N个整数。输出:可能有多组测试数据,对于每组数据,第一行输出一个整数,代表N个整数中的最大值,并将此值从数组中去除,将剩下的数进行排序。第二行将排序的结果输出。样例输入:41342样例输出:4123#includeintmain(){in7、ti,n,t,j,a[1000];while(scanf("%d",&n)!=EOF){for(i=0;i=0&&a[j]>t){a[j+1]=a[j];j--;}a[j+1]=t;}printf("%d",a[n-1]);if(n==1)printf("-1");elsefor(i=0;i8、n");}}return0;}5.题目描述:Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。对每个测试用例,首先输出1行“Casei:”,其中i是测试用例的编号(从1开始)。随后在N行中输出按要求排序后的结果,即:当C=1时,按学号递增排序;当C=2时,按姓名的非递减字典序排序;当C=3时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则
3、,并输出N个学生排序后的信息。输入:测试数据有多组,每组输入第一行有一个整数N(N<=1000),接下来的N行包括N个学生的数据。每个学生的数据包括姓名(长度不超过100的字符串)、年龄(整形数)、成绩(小于等于100的正数)。输出:将学生信息按成绩进行排序,成绩相同的则按姓名的字母序进行排序。然后输出学生信息,按照如下格式:姓名年龄成绩样例输入:3abc2099bcd1997bed2097样例输出:bcd1997bed2097abc2099#include#includes
4、tructstudent{charname[101];intage;intscore;};intmain(){intn,i,j;structstudenta[1000],temp;while(scanf("%d",&n)!=EOF){for(i=0;ia[j].score){temp=a[j-1
5、];a[j-1]=a[j];a[j]=temp;}elseif(a[j-1].score==a[j].score){if(strcmp(a[j-1].name,a[j].name)>0){temp=a[j-1];a[j-1]=a[j];a[j]=temp;}elseif(strcmp(a[j-1].name,a[j].name)==0){if(a[j-1].age>a[j].age){temp=a[j-1];a[j-1]=a[j];a[j]=temp;}}}}}for(i=0;i6、s%d%d",a[i].name,a[i].age,a[i].score);}}return0;}4.题目描述:输入一系列整数,将其中最大的数挑出,并将剩下的数进行排序。输入:输入第一行包括1个整数N,1<=N<=1000,代表输入数据的个数。接下来的一行有N个整数。输出:可能有多组测试数据,对于每组数据,第一行输出一个整数,代表N个整数中的最大值,并将此值从数组中去除,将剩下的数进行排序。第二行将排序的结果输出。样例输入:41342样例输出:4123#includeintmain(){in7、ti,n,t,j,a[1000];while(scanf("%d",&n)!=EOF){for(i=0;i=0&&a[j]>t){a[j+1]=a[j];j--;}a[j+1]=t;}printf("%d",a[n-1]);if(n==1)printf("-1");elsefor(i=0;i8、n");}}return0;}5.题目描述:Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。对每个测试用例,首先输出1行“Casei:”,其中i是测试用例的编号(从1开始)。随后在N行中输出按要求排序后的结果,即:当C=1时,按学号递增排序;当C=2时,按姓名的非递减字典序排序;当C=3时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则
6、s%d%d",a[i].name,a[i].age,a[i].score);}}return0;}4.题目描述:输入一系列整数,将其中最大的数挑出,并将剩下的数进行排序。输入:输入第一行包括1个整数N,1<=N<=1000,代表输入数据的个数。接下来的一行有N个整数。输出:可能有多组测试数据,对于每组数据,第一行输出一个整数,代表N个整数中的最大值,并将此值从数组中去除,将剩下的数进行排序。第二行将排序的结果输出。样例输入:41342样例输出:4123#includeintmain(){in
7、ti,n,t,j,a[1000];while(scanf("%d",&n)!=EOF){for(i=0;i=0&&a[j]>t){a[j+1]=a[j];j--;}a[j+1]=t;}printf("%d",a[n-1]);if(n==1)printf("-1");elsefor(i=0;i8、n");}}return0;}5.题目描述:Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。对每个测试用例,首先输出1行“Casei:”,其中i是测试用例的编号(从1开始)。随后在N行中输出按要求排序后的结果,即:当C=1时,按学号递增排序;当C=2时,按姓名的非递减字典序排序;当C=3时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则
8、n");}}return0;}5.题目描述:Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。对每个测试用例,首先输出1行“Casei:”,其中i是测试用例的编号(从1开始)。随后在N行中输出按要求排序后的结果,即:当C=1时,按学号递增排序;当C=2时,按姓名的非递减字典序排序;当C=3时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则
此文档下载收益归作者所有