dポイントプレゼントキャンペーン実施中!

以下のプログラムを書いたのですが、結果が正確に表示されません。
どこが間違っているのでしょうか?

プログラムの内容は10個の整数を入力し、更に入力した数字で割れる個数を表示するものです。

#include <stdio.h>
void input_i(int *in, int num);
int div_enable(int *in, int num, int divisor);

int main(void)
{
int array[10];
int i, s_num;

input_i(array, 10);
scanf("%d", &s_num);
i = div_enable(array, 10, s_num);
printf("%d\n", i);
return 0;
}

void input_i(int *in, int num)
{
int i;
for(i=0; i<num; i++){
scanf("%d", in+1);
}
}

int div_enable(int *in, int num, int divisor)
{
int cnt, i;

cnt = 0;
for(i=0; i<num; i++) {
if(in[i]%divisor == 0){
cnt++;
}
}

return cnt;
}

A 回答 (1件)

scanf("%d", in+1);


これ,単なるタイポだと思うが...
    • good
    • 0
この回答へのお礼

ありがとうございます。
in+1 → &in[i]に変更で問題なく動作しました。

お礼日時:2010/01/07 10:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!