1から100までの整数をランダムで配列に指定数,入力していく関数を作成しているのですが,
以下のコードで試したところ100を超える数字が入力されてしまいます.この関数の不備と,また,同じ数字が必ず配列に含まれないようにするにはどうすればいいですか.
C
1#include <stdio.h> 2#include <stdlib.h> 3 4void make_num(int ary[], int x, int max) 5{ 6 int i, m; 7 for (i = 1; i <= x; i++) 8 { 9 m = rand() % max; 10 ary[i] = m; 11 i++; 12 } 13} 14 15int main(void) 16{ 17 int i, a[100]; 18 make_num(a, 5, 100); 19 for (i = 1; i <= 5; i++) 20 printf("a[%d]=%d\n", i, a[i]); 21}
回答4件
あなたの回答
tips
プレビュー