Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia.
Estou tentando montar algo na mesma logica de uma planilha do excel.
Em cada linha estou lendo strings e tambem ints, as quais estao separadas por \t, cada separação de \t significa uma coluna da "tabela"
Bom, ja tenho a logica de criar uma matris, onde a quantidade de linhas é a quantidade de linhas que ele lê, e a quantidade de colunas, onde estou indentificando como a quantidade max de \t, pra isso estou colocando cada valor de quantidade de \t's em um vetor, faço a ordenação e depois pego o maior valor, pra que é o max valor de colunas, entre os lidos.
Mas estou com um problema, nao consigo colocar cada dado, que esta antes de um \t, ou entre \t's, em uma linha e uma coluna de uma matris, alguem poderia me dar uma luz? quem sabe pra achar a quantidade de colunas de uma maneira mais eficiente.
meu codigo:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
void ColocaCelula(char vetor, char matris, int k, int colunas){
int l;
int m;
for(m=0;m<k;m++){
char aux[301];
for(l=0;l<k;l++){
if((vetor[l] == 9) || (vetor[l] == 10)){
strcpy(matris, aux);
//coloca o aux no matris
colunas++;
memset(aux,(char)0,sizeof(char)*50);
}else{
strcat(aux, vetor);
//concatenar vetor[] no aux;
}
}
}
} int i;
int j;
int temp;
int tamanho = strlen(vetor);
for(i=0;i<tamanho;i++){
for(j=0;j<tamanho;j++){
if(vetor[i] < vetor[j]){
temp = vetor[i];
vetor[i] = vetor[j];
vetor[j] = temp;
}
}
}
return vetor[0];
}
int main(){
int tamanho = 0;
int linhas;
int colunas = 1;
char vetor[301];
int k, i,l;
int m;
int j;
k=0;
char matris[linhas][colunas][301];
while(1){
fgets(vetor, 301, stdin);
if(strcmp(vetor, "\n") == 0){
break;
}
tamanho = strlen(vetor);
k++;
}
return 0;
}
Obs: meu codigo aparentemente esta quebrando, nao faço a ideia do porque.
obrigado.
Carregando comentários...