Ir ao conteúdo
  • Cadastre-se

Não estou conseguindo armazenar caracteres em uma matriz[4][3] de caracteres. Poderiam me ajudar?


Posts recomendados

#include <stdio.h>#define MAXN 300300int main(){	int n,c;	char p[MAXN];		scanf("%d",&n);	gets(p);		for(c=0;c<n*3;c++){		printf("%c ",p[c]);	}	return 0;} 
 

@Juliano Balcante Pereira

Poste aí o código todo.

Use a tag CODE (<>) pra organizar o código no corpo do post.

 

Link para o comentário
Compartilhar em outros sites

prove trocar seu scanf por este scanf("%d%*c",&n). porém concordo com @Math.Pi... Isso ta meio doido mesmo kkkk

 

primeiro que você declara 300 mil e la vai pedrada chars?kkk logo você lê um numero e uma string sei la de que tamanho, e por ultimo você imprime 3 vezes o numero que você leu? WTF!

 

Cuidado com coisas assim kkk

 

Seu scanf ta lendo a tecla enter junto com o numero, e por isso ele "salta" o string "p". com por %*c como falei no scanf o gets funciona bem por que ja não tem lixo no buffer. MAIS ISSO É MUITO DOIDOWWWW FUI!

Link para o comentário
Compartilhar em outros sites

gets() serve para ler string. Em C uma string é uma cadeia de caracteres terminada por '\0'.OU SEJA, 'a' é char e "a\0" não é char.

getchar() le um único caractere, e retorna o caractere lido.

ou seja

char c;

c=getchar();

vai ler um caracter e atribui-lo à variável c.

scanf("%c",&c); também pode ser usado para ler um caractere e atribui-lo a variável c.

note, porém, que '\n' (new line ou ENTER)  é um caractere, e portanto será lido, então faça o tratamento correto da leitura.

char c;int LINHAS,COLUNAS,i,j;printf("digite o numero de linhas e de colunas: ");scanf("%d %d",LINHAS,COLUNAS);//Cria a matrizchar MATRIZ[LINHAS][COLUNAS];for(i=0;i<LINHAS;i++)//note que começa do 0 e não do 1.{    for(j=0;j<COLUNAS;j++)    {        while((c=getchar())=='\n');//vai procurar por um caractere diferente de \n ate achar        MATRIZ[i][j]=c;    }}
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...