teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

5

input追記

2020/08/30 01:23

投稿

mjk
mjk

スコア303

answer CHANGED
@@ -50,10 +50,11 @@
50
50
  }
51
51
 
52
52
  ```
53
-
54
- ```output
53
+ ```input
55
54
  2 6
56
55
  this is a pen
56
+ ```
57
+ ```output
57
58
  tHIS Is a pen
58
59
 
59
60
  ```

4

画像追加

2020/08/30 01:23

投稿

mjk
mjk

スコア303

answer CHANGED
@@ -2,8 +2,7 @@
2
2
 
3
3
  `char str[100];`で空白を含む1行丸ごと取得します。
4
4
  str[]の中身 ※最後に改行とNULLが入っているので計14文字です。
5
- 012345678901234
5
+ ![イメージ説明](85eb50cd2fcff43b1636697c5a6f1d04.jpeg)
6
- this is a pen
7
6
 
8
7
  あとはfor()ループでstr[0]→str[12]まで判定と加工処理をすればOKです。
9
8
  判定条件はiがn~m文字目 and 対象が小文字の場合です。

3

追記説明文

2020/08/30 01:17

投稿

mjk
mjk

スコア303

answer CHANGED
@@ -1,5 +1,15 @@
1
+ > スペースを無視している分大文字にする文字数にズレが生じること、そもそもスペースが消えてしまうことはどのように修正したら良いのでしょう。
2
+
3
+ `char str[100];`で空白を含む1行丸ごと取得します。
4
+ str[]の中身 ※最後に改行とNULLが入っているので計14文字です。
5
+ 012345678901234
6
+ this is a pen
7
+
8
+ あとはfor()ループでstr[0]→str[12]まで判定と加工処理をすればOKです。
9
+ 判定条件はiがn~m文字目 and 対象が小文字の場合です。
10
+
11
+ ---
1
12
  普段C++しか使っていないので不慣れですがご参考までに。
2
-
3
13
  参考:
4
14
  [C言語での一行入力の方法](https://www.tmp1024.com/articles/one-line-get)
5
15
  [C言語 標準入力からの掛け算](https://teratail.com/questions/252802)

2

url追記

2020/08/30 01:11

投稿

mjk
mjk

スコア303

answer CHANGED
@@ -3,6 +3,7 @@
3
3
  参考:
4
4
  [C言語での一行入力の方法](https://www.tmp1024.com/articles/one-line-get)
5
5
  [C言語 標準入力からの掛け算](https://teratail.com/questions/252802)
6
+ [C言語 文字列のための標準ライブラリ関数](https://www.cc.kyoto-su.ac.jp/~yamada/programming/string.html)
6
7
 
7
8
  補足追記
8
9
  > fgets関数の注意点として、入力の終わりを示すNULL文字が入力の末尾に追加されていますが、そのひとつ前には改行文字が入っています。

1

補足追記

2020/08/30 01:01

投稿

mjk
mjk

スコア303

answer CHANGED
@@ -1,6 +1,14 @@
1
- 参考:[C言語 標準入力からの掛け算](https://teratail.com/questions/252802)
2
1
  普段C++しか使っていないので不慣れですがご参考までに。
3
2
 
3
+ 参考:
4
+ [C言語での一行入力の方法](https://www.tmp1024.com/articles/one-line-get)
5
+ [C言語 標準入力からの掛け算](https://teratail.com/questions/252802)
6
+
7
+ 補足追記
8
+ > fgets関数の注意点として、入力の終わりを示すNULL文字が入力の末尾に追加されていますが、そのひとつ前には改行文字が入っています。
9
+
10
+ 文字列数を取得する為に、`#include <string.h>` `strlen()`を使用しています。
11
+
4
12
  ```C
5
13
  #define _CRT_SECURE_NO_WARNINGS
6
14
  #include <stdio.h>