Enviado em 04/04/2016 - 21:41h
Olá, tenho um exercico em que recebeo N strings e devo retornar as strings ordenadas com as maiores palavras na frente.#include <stdio.h>
#include<string.h>
#define MAX 50
/* Uma struct para armazenar as strings de entrada.
** Outra struct para armazenar as palavras que serão quebradas na função quebra_palavra.
*/
struct Palavras {
char palavra[MAX];
};
struct Palavras partes[MAX];
int quebra_frase (char frase[MAX]);
int main (void) {
struct Strings {
char frase [MAX];
};
int n, i=0, num_palavra;
scanf("%d", &n);
struct Strings string[n];
while (i<n+1) {
fgets(string[i].frase, MAX, stdin);
i++;
}
num_palavra = quebra_frase(string[1].frase);
i=0;
while (i<num_palavra) {
printf("%s\n", partes[i].palavra);
i++;
}
return 0;
}
int quebra_frase (char frase[MAX]) {
int p=0, i=0, count=0, n=0;
for (i=0;i<strlen(frase);i++) {
if (frase[i] == ' ' || frase[i] == '\n') {
while (p<i) {
partes[count].palavra[n] = frase[p];
n++;
p++;
}
count++;
p=i+1;
n=0;
}
}
return count;
}
/*count é o numero de partes,
**n percorre a string da palavra
**p percorre as posições da palavra a ser guardada */
Customizar a Instalação do Linux Debian com Preseed
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
Resolver algumas mensagens de erro do SSH
Instalar módulo de segurança do Banco do Brasil Warsaw do tipo .run
criar alias do comando "ls -la" (6)
Webinar Zabbix "Arquite... Resiliente: HA + Proxy para Monitorame... (0)