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

回答編集履歴

2

追記

2018/11/23 12:39

投稿

cateye
cateye

スコア6851

answer CHANGED
@@ -1,1 +1,19 @@
1
- LouiS0616さんの指摘と違うところを、もしinputが整数だとしてもinput<='10'の比較は出来ません。数字2桁は文字列になります。従って、scanf()で読み込むかfgets()で文字列を読み込んでstrtol()で数値に変換しましょう。strtol()は、変換できない時は0を返します。なお関数は仕様を調べてから使うようにしましょう。・・・まず、Cの基礎(整数、浮動小数点数、文字、文字列、標準関数など)を勉強して下さい。
1
+ LouiS0616さんの指摘と違うところを、もしinputが整数だとしてもinput<='10'の比較は出来ません。数字2桁は文字列になります。従って、scanf()で読み込むかfgets()で文字列を読み込んでstrtol()で数値に変換しましょう。strtol()は、変換できない時は0を返します。なお関数は仕様を調べてから使うようにしましょう。・・・まず、Cの基礎(整数、浮動小数点数、文字、文字列、標準関数など)を勉強して下さい。
2
+
3
+ 「追記」
4
+ ```c
5
+ s2.c:9:107: warning: format specifies type 'int *' but the argument has type 'double *'
6
+ [-Wformat]
7
+ puts("どのくらい髪を植毛しますか?100単位で入力ください!!: "); scanf("%d", &input);
8
+ ~ ^~~~~~
9
+ %lf
10
+ s2.c:14:34: warning: multi-character character constant [-Wmultichar]
11
+ }else if(input>='0'&& input<='10'){
12
+ ^
13
+ s2.c:15:17: warning: format specifies type 'int' but the argument has type 'double' [-Wformat]
14
+ printf("%d",input);
15
+ ~~ ^~~~~
16
+ %f
17
+ 3 warnings generated.
18
+ ```
19
+ 自分で説明できない(正当な理由がない)ワーニングは取りましょう。

1

誤記修正

2018/11/23 12:39

投稿

cateye
cateye

スコア6851

answer CHANGED
@@ -1,1 +1,1 @@
1
- LouiS0616さんの指摘と違うところを、もしinputが整数だとしてもinput<='10'の比較は出来ません。数字2桁は文字列になります。従って、scanf()で読み込むかfgets()で文字列を読み込んでstrtol()で数値に変換しましょう。stroll()は、変換できない時は0を返します。関数は仕様を調べてから使うようにしましょう。・・・まず、Cの基礎(整数、浮動小数点数、文字、文字列、標準関数など)を勉強して下さい。
1
+ LouiS0616さんの指摘と違うところを、もしinputが整数だとしてもinput<='10'の比較は出来ません。数字2桁は文字列になります。従って、scanf()で読み込むかfgets()で文字列を読み込んでstrtol()で数値に変換しましょう。strtol()は、変換できない時は0を返します。なお関数は仕様を調べてから使うようにしましょう。・・・まず、Cの基礎(整数、浮動小数点数、文字、文字列、標準関数など)を勉強して下さい。