#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <algorithm>
#define INTSIZE 100
#define INCREMENT 5
using namespace std;
int my_atoi(char* s){
int num,i;
char ch;
num=0;
for(int i=0;i<strlen(s);i++){
ch=s[i];
if(ch<'0' || ch>'9')
break;
num = num*10+(ch-'0');
}
return num;
}
int main(){
char *s,*p,*q,*r;
s=(char*)malloc(INTSIZE*sizeof(char));
int* num;
int i=0,j=0,m=0,n=0,length=0;
while(1){
if(i>=INTSIZE){
s=(char*)realloc(s,(INTSIZE+INCREMENT)*sizeof(char));
}
s[i]=getchar();
if(s[i]=='\n'){
s[i]='\0'; //修改为字符串结束
break;
}
i++;
}
length=strlen(s);
num=(int*)malloc(length*sizeof(int));
i=0;
p=s;
while(i<length){
if(s[i]<-32768||s[i]>32767){
printf("illegal data");
system("pause");
return 0;
}
if(s[i]==','){
i++;
p++;
}
if(s[i]!=','){
q=(char*)malloc(INTSIZE*sizeof(char));
q=p;
r=q;
while(s[i]!=','&&s[i]!='\0'){
i++;
p++;
q++;
}
q='\0';
++j;
num[j]=my_atoi(r);
}
}
sort(num,num+j-1);
if(j>1){
for(int k=1;k<=j;k++){
printf("%d\t",num[k]);
if(k%4==0) printf("\n");
}
}
return 0;
}
2016A
发布时间 2023-07-03 11:08:21作者: ben犇