Pagini recente » Cod sursa (job #2853539) | Cod sursa (job #1359091) | Cod sursa (job #1326375) | Cod sursa (job #432289) | Cod sursa (job #1342353)
#include<stdio.h>
#include<string.h>
#include<ctype.h>
int infor(char *a)
{
int i;
for (i=0;i<strlen(a);i++)
if (( a[i]!=' ')&&(a[i]!='\n')) return 1;
return 0;
}
int main()
{
FILE * citire;
FILE *afisare;
char text[1025];
char *taiat;
char save[1025];
citire=fopen("convertor.in","r");
afisare=fopen("convertor.out","w");
int i,j;
int s=0;
char token[1025][1025];
while (fgets(text,1025,citire))
{
taiat=strtok(text,":,{}] [\n");
while(taiat!=NULL)
{
if(infor(taiat)==1&&taiat!=NULL)
strcpy(token[s++],taiat);
taiat=strtok(NULL,":,}]{[\n");
}
}
for (i=0;i<s;i++)
{ strcpy(save,token[i]);
strcpy(token[i]," ");
strcat(token[i],save);
if (strchr(token[i],'"')!=NULL)
{
taiat=strtok(token[i],"\"\n");
taiat=strtok(NULL,"\"");
strcpy(token[i],taiat);
}
else
{
taiat=strpbrk(token[i],"0123456789");
strcpy(token[i],taiat);
}
}
int lungime=0;
for (i=2;i<s;i=i+2)
if (strcmp(token[i],token[0])==0)
{ lungime=i;break;}
for (i=0;i<lungime;i=i+2)
fprintf(afisare,"%s,",token[i]);
fprintf(afisare,"\n");
for(i=0;i<s/lungime;i++)
{
for(j=1;j<lungime;j=j+2)
fprintf(afisare,"%s,",token[i*lungime+j]);
fprintf(afisare, "\n");
}
return 0;
}