有问题的代码
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
int main(){
char a[20],b[20],c[20];
gets(a);
gets(b);
gets(c);
char *p1=a,*p2=b,*p3=c;
int s=0,u=0,m=0;
for(int i=0;i<strlen(a);i++){
s +=*(p1+i);
}
for(int i=0;i<strlen(b);i++){
u +=*(p2+i);
}
for(int i=0;i<strlen(c);i++){
m +=*(p3+i);
}
if(min(s,min(u,m))==s){
puts(p1);
if(*p2==u>m?*p2:*p3){
puts(p3);
puts(p2);
}
else{
puts(p2);
puts(p3);
}
}
if(min(s,min(u,m))==u){
puts(p2);
if(*p1==s>m?*p1:*p3){
puts(p3);
puts(p1);
}
else{
puts(p1);
puts(p3);
}
}
if(min(s,min(u,m))==m){
puts(p3);
if(*p2==u>s?*p2:*p1){
puts(p1);
puts(p2);
}
else{
puts(p2);
puts(p1);
}
}
return 0;
}
跟着大佬的代码打出的:https://blog.csdn.net/changreal/article/details/87880449
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
void swap(char a[],char b[]){
char c[20];
for(int i=0;i<strlen(a);i++){
c[i]=a[i];
}
strcpy(a,b);
strcpy(b,c);
}
int main(){
char a[20],b[20],c[20];
gets(a);gets(b);gets(c);
char *p1=a,*p2=b,*p3=c;
if(strcmp(a,b)>0) swap(a,b);
if(strcmp(b,c)>0) swap(b,c);
if(strcmp(a,b)>0) swap(a,b);
puts(p1);puts(p2);puts(p3);
return 0;
}