Enviado em 14/06/2013 - 12:52h
bom pessoal, boa tarde.
char matris[30][26][302];
//Obs: k = numero de linhas
Aqui é onde faço a quebra usando strtok.
char *ponteiro;
ponteiro = strtok(vetor, "\t");
int i,j;
for(i=0;i<k;i++){
for(j=0;j<colunas;j++){
while (ponteiro != NULL){
strcpy(matris[i][j], ponteiro);
ponteiro = strtok(NULL,"\t");
}
}
}
//Depois para dar print, faço o seguinte.
int w,z;
for(w=0;w<k;w++){
for(z=0;z<colunas;z++){
printf("%s", matris[w][z]);
}
}
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <assert.h>
int conta(char c, char *s){
int num_vezes=0;
while(*s!='{TTEXTO}'){
if(*s== '\t'){
num_vezes++;
}
s++;
}
return num_vezes;
}
int ordenar(int vetorDeNumeros[]){
int tamanhoVetor = (sizeof vetorDeNumeros)/(sizeof vetorDeNumeros[0]);
int i;
int j;
int temp;
for(i=0;i<tamanhoVetor;i++){
for(j=0;j<tamanhoVetor;j++){
if(vetorDeNumeros[i] < vetorDeNumeros[j]){
temp = vetorDeNumeros[i];
vetorDeNumeros[i] = vetorDeNumeros[j];
vetorDeNumeros[j] = temp;
}
}
}
return vetorDeNumeros[0];
}
int main(){
//int tamanho = 0;
char vetor[302];
int m;
int k=0;
int colunas = 0;
int vetorDeNumeros[2];
//localiza pelo numero maximo de coisas que ele vai ler
char matris[30][26][302];
//inicia-se o loop
while(1){
//Recebe os dados
fgets(vetor, 302, stdin);
//Verifica se tem a quebra de linha
if(strcmp(vetor, "\n") == 0){
break;
}
//Aqui eu insiro na funcao o vetor
char *s = vetor;
//Recebo a quantia de \t
m = conta('\t', s);
//Passo pra posicao do vetor, o numero de colunas
vetorDeNumeros[k] = m+1;
//Recebo o resultado do bubble sort
colunas = ordenar(vetorDeNumeros);
//faz a colocacao de cada elemento dentro de cada celula, tentei por funcao mas nao deu muito certo
char *ponteiro;
int i,j;
for(i=0;i<k;i++){
for(j=0;j<colunas;j++){
ponteiro = strtok(vetor, "\t");
while (ponteiro != NULL){
strcpy(matris[i][j], ponteiro);
ponteiro = strtok(NULL,"\t");
}
}
}
//Quantia de linas que foram
k++;
}
//printf("%d", colunas);
int w,z;
for(w=0;w<k;w++){
for(z=0;z<colunas;z++){
printf("%s", matris[w][z]);
}
}
return 0;
}
Atualizações de Apps, Desktop e Kernel agitam o ecossistema Linux nesta terça-feira
Miyoo Mini Plus + Onion OS (Linux)
IA local no bolso, novo visual no Raspberry Pi OS e mais destaques do software livre
Kernel turbinado, compatibilidade em alta e debate sobre sustentabilidade: o dia no mundo Linux
Kernel turbinado e GNOME 49 dominam o giro do dia no mundo Linux
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (1)
Como listar os arquivos em "bloquin... (0)
Como vencer a procrastinação? (8)
Adicional de convivdado em linux somente linha de comando (3)