编写一个程序,输入n本书的书名,将书名排序,输出排序后的书名 用C++编写

2025-03-03 21:36:48
推荐回答(2个)
回答1:

//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
#include "string.h"
void sort(char (*name)[20],int n){
int i,j,k;
char t[20];
for(i=0;i for(k=i,j=k+1;j if(strcmp(name[k],name[j])>0) k=j;
if(k!=i){
strcpy(t,name[k]);
strcpy(name[k],name[i]);
strcpy(name[i],t);
}
}
}
void print(char (*name)[20],int n){
int i;
for(i=0;i}
int main(void){
char name[10][20];
int n,i;
while(1){
printf("Input n(1~10)...\nn=");
scanf("%d",&n);
if(n>0 && n<11) break;
printf("Error,redo: ");
}
printf("Type the name of %d books...\n",n);
for(i=0;i sort(name,n);
printf("\n");
print(name,n);
return 0;
}

回答2:

#include
#include
#include
#include
int main()
{
string ss;
vector filename;
int n;
cin>>n;
int i=0;
while(i{
cin>>ss;
filename.push_back(ss);
}
sort(filename.begin(),filename.end());
for(int i=0;i{
cout<}
return 0;
}