#1
by しん » 3年前
私は演習課題でサイコロを最大六回まで投げて、そのサイコロの目の和を出したいプログラムを作成しております。
標準入力で以下の数字を入力します
例1
5
3 4 5 2 1
例2
3
2 3 1
上の5はサイコロを投げた回数
下の数字はサイコロを投げた目をfgets()とsscanf()で呼び込みたいです。
下のfor文で一行目のサイコロを投げた回数をn回回して、その合計値をb=b+m;で足し算をしたと考えております。
ここで困っているのが、下の数字のスペース区切りで入力した数字をn回読み込むためにはsscanf()でどのような読み込み方をすればよいでしょうか?
以下私が途中まで作成したコードです。
#include <stdio.h>
int main(void){
char str[1000];
int n;
int m;
int b;
fgets(str, sizeof(str), stdin);
sscanf(str,"%d",&n);
fgets(str,sizeof(str),stdin);
sscanf(str,"%d ",&m);
for(int i =0;i<n;i++){
// m = strtok(NULL," ");
printf("%d\n", m);
b=b+m;
}
printf("%d", b);
return 0;
}
私は演習課題でサイコロを最大六回まで投げて、そのサイコロの目の和を出したいプログラムを作成しております。
標準入力で以下の数字を入力します
例1
5
3 4 5 2 1
例2
3
2 3 1
上の5はサイコロを投げた回数
下の数字はサイコロを投げた目をfgets()とsscanf()で呼び込みたいです。
下のfor文で一行目のサイコロを投げた回数をn回回して、その合計値をb=b+m;で足し算をしたと考えております。
ここで困っているのが、下の数字のスペース区切りで入力した数字をn回読み込むためにはsscanf()でどのような読み込み方をすればよいでしょうか?
以下私が途中まで作成したコードです。
#include <stdio.h>
int main(void){
char str[1000];
int n;
int m;
int b;
fgets(str, sizeof(str), stdin);
sscanf(str,"%d",&n);
fgets(str,sizeof(str),stdin);
sscanf(str,"%d ",&m);
for(int i =0;i<n;i++){
// m = strtok(NULL," ");
printf("%d\n", m);
b=b+m;
}
printf("%d", b);
return 0;
}