日本語の配列 → 配列名が日本語? と思ってしまった

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define jp(STRING) array[ch(STRING)]
enum{HARU,NATU,AKI,FUYU,SAKURA,GRA,NAMEOVER};
const char* jpname[NAMEOVER] = {"はる" , "夏" , "あき" , "冬" , "さくら" , "ごるぁ"};
int ch(const char * str){
  for(int i = 0;i<NAMEOVER;i++) if(strcmp(str,jpname[i])) return i; exit(1);
}

int main(){
char array[NAMEOVER][256];
sprintf(jp("はる") , "はるのるららの〜");
puts(jp("はる"));

return 0;
}
ただ、関数一つで十分なのですが・・・・なんとなく。