プログラミング言語 C 2.10
三項演算子を使って、tolowerを書けという問題。
#include <stdio.h> #include <assert.h> static int my_lower(int c); static void test_my_lower(void); int main(void) { test_my_lower(); } static void test_my_lower() { assert(my_lower('0') == '0'); assert(my_lower('a') == 'a'); assert(my_lower('z') == 'z'); assert(my_lower('A') == 'a'); assert(my_lower('Z') == 'z'); } static int my_lower (int c) { return (c >= 'A' && c <= 'Z') ? (c + ('a' - 'A')) : c; }