Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal estava realizando um exercicio com c e ocorreu o seguinte problema:
int main ()
{
//Tamanho da matriz.
int i = 4;
int j = 4;
int size = i*j;
//loop
int k = 0;
char matrix[size];
//Preenchendo matrix com : para ajudar na lógica.
for(k=0; k==size; k++)
{
matrix[k] =":";
}
for(k=0; k<size; k++)
{
printf("%c", matrix[k]);
}
return(0);
}
è muito simples ele pegaria o tamanho da multiplicação da linha*coluna após isso faria um loop preenchendo e outro loop mostrando, sei que poderia fazer as duas coisas ao mesmo tempo, mas eu queria fazer assim por que o objetivo do exericio é um pouco complicado, mas por fim gostaria de saber por que ele está imprimindo isso:
M�}0�
Siim o erro não estava no for por que era assim que eu queria para implementar a lógica do exercicio, o erro estava somente nas apas duplas -
matthee,
Há dois problemas no seu código.
1º - O limitador no teu for está incorreto. O correto é:
for(k=0; k < size; k++)
2º - Para atribuição de caracteres, utlize apóstrofe, e não aspas.
Esse erro provavelmente o compilador retornou alguma warning, como boa prática de programação, comece a considerar os warnigs retornados pelo compilador.
Espero ter ajudado, FLW!