ポインタを使った表示方法
Posted: 2011年6月05日(日) 17:44
ポインタを用いて、数字を入力すると月の名前を表示するプログラムを作っているのですが、うまくいきません。
char *month_name(int n)とstatic char *months[]の2つの名称は変えないようにしたいですが、どうすればいいでしょうか?
#include <stdio.h>
char *month_name(int n){
static char *months[] = { "January","February","March","April",
"May","June","July","August",
"September","October","November","December",
"unknown month"};
if(n=1) printf("%c",*months[0]);
else if(n=2) printf("%c",*months[1]);
else if(n=3) printf("%c",*months[2]);
else if(n=4) printf("%c",*months[3]);
else if(n=5) printf("%c",*months[4]);
else if(n=6) printf("%c",*months[5]);
else if(n=7) printf("%c",*months[6]);
else if(n=8) printf("%c",*months[7]);
else if(n=9) printf("%c",*months[8]);
else if(n=10) printf("%c",*months[9]);
else if(n=11) printf("%c",*months[10]);
else if(n=12) printf("%c",*months[11]);
else printf("%c",*months[12]);
}
int main(void){
int n;
while(scanf("%d",&n)==1){
month_name(n);
}
return 0;
}