为什么我的代码跳过scanf

时间:2018-02-04 16:46:11

标签: c scanf getchar

它正在跳过我的代码并使用getchar() 它不起作用? 我做了一次,它仍然无法正常工作。 有人可以帮忙吗?我尝试了一切 我也是初学者 顺便说一句,代码是用于寻找模式。

#include <stdio.h>

int mode(int a[],int n) {
   int maxValue = 0, maxCount = 0, i, j;

   for (i = 0; i < n; ++i) {
      int count = 0;

      for (j = 0; j < n; ++j) {
         if (a[j] == a[i])
         ++count;
      }

      if (count > maxCount) {
         maxCount = count;
         maxValue = a[i];
      }
   }

   return maxValue;
}

int main() {
   int n;
   int b;
   int d;
   printf("How many numbers do you want? ");
   scanf(" %d",&n);
   getchar();
   int c[] = {0};
   for(b = 0;b < n; b++){
    printf("Input a number: ");
    getchar();
    scanf(" %d",&d);
    getchar();
    c[b]=d;

   }

   printf("Mode = %d ", mode(c,n));
}

顺便说一句,我在scanf中的#d之前放了一个空格键,它不起作用。 我正在使用Codeblocks

0 个答案:

没有答案