コードの内容としては、ユーザーに"yes"か"no"とselect変数に入力してもらい、select変数とyes_judge変数を比較し、正しかったらint型のdays変数が1個ずつ増えて行く。違ったら、days変数はリセットされるという仕組みです。どうかよろしくお願いします。。。
C
1#include <stdio.h> 2 3int main(void) { 4while(1){ 5 //変数宣言 6 char yes_judge = "yes", select; 7 int flag, i, days; 8 printf("さあはじめよう"); 9 printf("もしあなたが欲求を守れたのなら、yesと、そうでないのならnoと入力"); 10 11 while(1) { 12 //yesと入力されたか判定 13 int i=0, flag; 14 scanf("%s",select); 15 16 while(yes_judge[i]!='\0' && select[i]!='\0'){ 17 if(yes_judge[i]!=select[i]){ 18 flag = 1; 19 break; 20 } 21 i++; 22 } 23 } 24 25 //条件分岐の処理 26 if(flag==1){ 27 days = days + 1; 28 29 30 char str[4]; 31 sprintf(str_days, "%d", days); 32 33 printf("よくやった。あなたは今、"+ str_days +"日継続中だ!"); 34 35 } else { 36 days = 0; 37 printf("日付がリセットされた。また頑張ろう!"); 38 } 39 40 return 0; 41}
エラーの内容としては
Main.c:6:10: warning: incompatible pointer to integer conversion initializing 'char' with an expression of type 'char [4]' [-Wint-conversion]
char yes_judge = "yes", select;
^ ~~~~~
Main.c:14:20: warning: format specifies type 'char *' but the argument has type 'int' [-Wformat]
scanf("%s",select);
~~ ^~~~~~
Main.c:16:24: error: subscripted value is not an array, pointer, or vector
while(yes_judge[i]!='\0' && select[i]!='\0'){
~~~~~~~~~^~
Main.c:16:43: error: subscripted value is not an array, pointer, or vector
while(yes_judge[i]!='\0' && select[i]!='\0'){
~~~~~~^~
Main.c:17:25: error: subscripted value is not an array, pointer, or vector
if(yes_judge[i]!=select[i]){
~~~~~~~~~^~
Main.c:17:36: error: subscripted value is not an array, pointer, or vector
if(yes_judge[i]!=select[i]){
~~~~~~^~
Main.c:31:17: error: use of undeclared identifier 'str_days'
sprintf(str_days, "%d", days);
^
Main.c:33:55: warning: treating Unicode character as whitespace [-Wunicode-whitespace]
printf("よくやった。あなたは今、"+ str_days +"日継続中だ!");
^~
Main.c:33:66: warning: treating Unicode character as whitespace [-Wunicode-whitespace]
printf("よくやった。あなたは今、"+ str_days +"日継続中だ!");
^~
Main.c:33:58: error: use of undeclared identifier 'str_days'
printf("よくやった。あなたは今、"+ str_days +"日継続中だ!");
^
Main.c:41:2: error: expected '}'
}
^
Main.c:3:16: note: to match this '{'
int main(void) {
^
4 warnings and 7 errors generated.