Twitter. It's what's happening.
Twitter. It's what's happening.
朝食を終えてから書いたので「朝飯前」とは言えないが、内容はそのレベル。
妙に真面目に書いてしまって、前提に無い条件にも対応はしている。
/* caesar.c */ #include <stdio.h> #include <stdlib.h> #include <string.h> void caesar(char *buf, char * str) { int i; int len; for(i = 0; str[i]; i++) { // 設問の前提から外れるけど、チェックを入れておく。 if(!isalpha(str[i])) { buf[i] = str[i]; continue; } buf[i] = (tolower(str[i]) > 'w') ? str[i] - 23 : str[i] + 3; } buf[i] = '\0'; } int main(int argc, char **argv) { int i; char * buf; for(i = 1; i < argc; i++) { buf = malloc(strlen(argv[i]) + 1); if(NULL == buf) return EXIT_FAILURE; caesar(buf, argv[i]); printf("%s ", buf); free(buf); } printf("\n"); // 勿体ないから putchar() とかでもいい。 return EXIT_SUCCESS; }