Olá, eu uso o Uri pois meu professor utiliza essa plataforma para fazer nossas avaliações
no entanto estou tendo problema com um programa, no qual, consegui criar no compilador, no entanto, o uri alega 10% de erro
Link do problema: https://www.urionlinejudge.com.br/judge/pt/problems/view/2022
e minha resolução:
__________________________________________________________________________________________________
#include<stdio.h>
#include<string.h>
typedef struct{
char nomep[25];
double valor;
int nota;
}pp;
typedef struct{
char nome[15];
int qnt;
pp presente[100], aju;
}pe;
main()
{
pe crianca[100], ajuda;
int y, z, w, i;
char comp1[50], comp2[50], aux[1];
w=0;
while (scanf("%s%d",&crianca[w].nome, &crianca[w].qnt)!=EOF)
{
for(y=0; y<crianca[w].qnt; y++)
{
fflush(stdin);
gets(crianca[w].presente[y].nomep);
scanf("%lf%d",&crianca[w].presente[y].valor, &crianca[w].presente[y].nota);
}
for(y=0; y<crianca[w].qnt; y++)
{
for(z=(y+1); z<crianca[w].qnt; z++)
{
if(crianca[w].presente[y].nota < crianca[w].presente[z].nota)
{
ajuda.aju = crianca[w].presente[y];
crianca[w].presente[y]=crianca[w].presente[z];
crianca[w].presente[z]= ajuda.aju;
}
if(crianca[w].presente[y].nota == crianca[w].presente[z].nota)
{
if(crianca[w].presente[y].valor> crianca[w].presente[z].valor)
{
ajuda.aju=crianca[w].presente[y];
crianca[w].presente[y]=crianca[w].presente[z];
crianca[w].presente[z]= ajuda.aju;
}
if(crianca[w].presente[y].valor == crianca[w].presente[z].valor)
{
for(i=0; i<strlen(crianca[w].presente[y].nomep); i++)
{
comp1 = crianca[w].presente[y].nomep; } for(i=0; i<strlen(crianca[w].presente[z].nomep); i++) { comp2 = crianca[w].presente[z].nomep; } for(i=0; i<strlen(comp1); i++) { if(comp1==' ') { comp1 = comp1[i+1]; comp1[i+1]= ' '; } } for(i=0; i<strlen(comp2); i++) { if(comp2==' ') { comp2 = comp2[i+1]; comp2[i+1]= ' '; } } tolower(comp1); tolower(comp2); if(strcmp(comp1, comp2) > 0) { ajuda.aju=crianca[w].presente[y]; crianca[w].presente[y]=crianca[w].presente[z]; crianca[w].presente[z]= ajuda.aju; } } } } } w++; } for(z=0; z<w; z++) { printf("Lista de %s\n",crianca[z].nome); for(y=0; y<crianca[z].qnt; y++) { printf("%s - R$%.2lf ", crianca[z].presente[y].nomep, crianca[z].presente[y].valor); } } }