fork download
  1. #include <stdio.h>
  2. #include <ctype.h>
  3.  
  4. // gcc49 なら bool 使えたっけ?
  5. #define TRUE 1
  6. #define FALSE 0
  7.  
  8. int main(void)
  9. {
  10. FILE *fp = stdin; // 手抜き
  11. //fp = fopen("text.txt", "r");
  12. int newLineComes = TRUE;
  13. int c;
  14. printf("---ヤルゼ\n");
  15. while( (c = fgetc( fp )) != EOF ){
  16. if (newLineComes) { // 新しい行が来たぜ
  17. if (islower(c)) { // 頭文字が小文字の場合は
  18. c = toupper(c); // 大文字に変換
  19. }
  20. newLineComes = FALSE; // もう新しくないぜ。
  21. }
  22. /* 改行だけが続けて来た場合にも、「次は新しい行」と解釈すべきだから、ここに else は入れないぜ */
  23. if (c == '\n') {
  24. newLineComes = TRUE; // 次は新しい行が来るぜ
  25. }
  26. printf( "%c", c );
  27. }
  28. printf("---オワタ\n");
  29. fclose(fp);
  30. return 0;
  31. }
  32.  
Success #stdin #stdout 0s 2248KB
stdin
magi res
Homa shinci
kanri nin
stdout
---ヤルゼ
Magi res
Homa shinci
Kanri nin
---オワタ