Cod sursa(job #1341703)

Utilizator RaduDoStochitoiu Radu RaduDo Data 13 februarie 2015 00:23:51
Problema Convertor Scor 0
Compilator c Status done
Runda rosedu_cdl_2015 Marime 1.11 kb
#include<stdio.h>
#include<string.h>

int main()
{
	FILE *f, *f2;
	char c;
	f = fopen("convertor.in", "rt");
	f2 = fopen("convertor.out", "wt");
	while(1)
	{
		fgetc(f);
		if(c == '"') while(1)
		{
			fgetc(f);
			if(c == '"')
			{
				fputc(',', f2);
				break;
			}
			fputc(c, f2);
		}
		else if(c == '}')
		{
			fputc(c, f2);
			break;
		}
		else if(c == ':') while(1)
		{
			fgetc(f);
			if(c == ',' || c == '}') break;
		}
		if(c == '}') break;
	}
	fputc('\n', f2);
	fseek(f, 0, SEEK_SET);
	while(1)
	{
		fgetc(f);
		if(c == ']') break;
		else if(c == '}')
		{
			fputc('\n', f2);
			while(1)
			{
				fgetc(f);
				if(c == '{' || c == ']') break;
			}
		}
		else if(c == ':')
		{
			while(1)
			{
				fgetc(f);
				if(c != ' ') break;
			}
			if(c != '"')
			{
				fputc(c, f2);
				while(1)
				{
					fgetc(f);
					if(c < '0' || c > '9')
					{
						fputc(',', f2);
						break;
					}
					fputc(c, f2);
				}
			}
			else
			{
				while(1)
				{
					fgetc(f);
					if(c == '"')
					{
						fputc(',', f2);
						break;
					}
					fputc(c, f2);
				}
			}
		}
		if(c == ']') break;
	}
	fclose(f); fclose(f2);
	return 0;
}