matthee 3 Denunciar post Postado Janeiro 25, 2013 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� Compartilhar este post Link para o post Compartilhar em outros sites
GBecker 51 Denunciar post Postado Janeiro 25, 2013 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! Compartilhar este post Link para o post Compartilhar em outros sites
matthee 3 Denunciar post Postado Janeiro 26, 2013 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 *-* Compartilhar este post Link para o post Compartilhar em outros sites