Samhain Postado Setembro 9, 2010 Denunciar Share Postado Setembro 9, 2010 Criar uma função que recebe um número, de 1 a 12, e mostre o nome do mês equivalente ao número recebido.estou errando em alguma coisa, e não consigo arrumar o problema, me ajudem!Sou iniciante, e deve ser um erro bobo =/#include<stdio.h> #include<conio.h> int mes(int num); main(){ int n; char ret; printf("Digite um numero: "); scanf("%i",&n); ret=mes(n); printf("Mes Correspondente: %c",ret); getch(); } int mes(int num){ char vet[12]={'janeiro','fevereiro','marco','maio','abril','junho', 'julho','agosto','setembro','outubro','novembro', 'dezembro'}; for(int x=0; x<12; x++){ vet[x]=x; } return vet[num]; } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ce1o2e Postado Setembro 9, 2010 Denunciar Share Postado Setembro 9, 2010 (editado) Codigo arrumado so compilar#include <stdio.h> #include <conio.h> #include <string.h> char mes(int num, char msg[]); main(){ int n; char ret[20]; printf("Digite um numero: "); scanf("%i",&n); mes(n, ret); printf("Mes Correspondente: %s", ret); getch(); } char mes(int num, char msg[]) { char vet[13][20] = {"NULL", "janeiro", "fevereiro", "marco", "maio", "abril", "junho", "julho", "agosto", "setembro", "outubro", "novembro", "dezembro"}; strcpy(msg, vet[num]); }não tem como passar string pelo return toda string tem que ter "" não '' você tem que enviar o ponteiro o char para a funcão e usando strcpy copiar o vetor para a msgsem precisar retorna a memoria da ret sera mudada para a string que estiver no numeroexemplovet[1] = "janeiro"copiar vet[1] para msgpronto ^^ espero ter ajudado Editado Setembro 9, 2010 por ce1o2e Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 GoMeS® Postado Setembro 9, 2010 Denunciar Share Postado Setembro 9, 2010 (editado) Correção:char mes(int num, char msg[]) { char vet[12][20] = {"janeiro", "fevereiro", "marco", "maio", "abril", "junho", "julho", "agosto", "setembro", "outubro", "novembro", "dezembro"}; strcpy(msg, vet[num-1]); } Editado Setembro 9, 2010 por GoMeS® Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ce1o2e Postado Setembro 9, 2010 Denunciar Share Postado Setembro 9, 2010 (editado) Correção:char mes(int num, char msg[]) { char vet[12][20] = {"janeiro", "fevereiro", "marco", "maio", "abril", "junho", "julho", "agosto", "setembro", "outubro", "novembro", "dezembro"}; strcpy(msg, vet[num-1]); } Desculpe Correção sua tambem uhauhauha char mes(int num, char msg[]) { num -= 1 char vet[12][20] = {"janeiro", "fevereiro", "marco", "maio", "abril", "junho", "julho", "agosto", "setembro", "outubro", "novembro", "dezembro"}; strcpy(msg, vet[num]); }@editops a sua tambem estava certo desculpe ai estou com sono xD Editado Setembro 9, 2010 por ce1o2e Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 GoMeS® Postado Setembro 9, 2010 Denunciar Share Postado Setembro 9, 2010 (editado) relaxa ^^ Editado Setembro 9, 2010 por GoMeS® Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Samhain Postado Setembro 10, 2010 Autor Denunciar Share Postado Setembro 10, 2010 Valeu galera ! :D Foi de grande ajuda.Abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Samhain
Criar uma função que recebe um número, de 1 a 12, e mostre o nome do mês equivalente ao número recebido.
estou errando em alguma coisa, e não consigo arrumar o problema, me ajudem!
Sou iniciante, e deve ser um erro bobo =/
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.