一个感觉错了,但是不知道哪里错了的问ti

img

img


谁能帮我看看哪里出问题了吗,为什么连输出都没了。。(?)×%@✘★

因为%d是输入整数的
你82164也是一个整数,所以会放在一个%d里面,这就导致了你还没有输入完毕,怎么会输出呢
想要一次输入只接受一个,需要把%d改成为%1d
有用记得采纳呐


#include<stdio.h>
#include<stdlib.h>
int main()
{
  int a[9], i, sum;
  char c;
  scanf("%1d%c%1d%1d%1d%c", &a[0], &c, &a[1], &a[2], &a[3], &c);
  for (i = 4; i < 9; i++)
    scanf("%1d", &a[i]);
  scanf("%c%c", &c, &c);
  sum = 0;
  for (i = 0; i < 9; i++)
    sum += a[i] * (i + 1);
  sum %= 11;
  if (sum == 10)
  {
    if (c == 'X')
    {
      printf("right");
      return 0;
    }
  }
  else
  {
    if (sum == c - '0')
    {
      printf("right");
      return 0;
    }
  }
  printf("wrong");
  return 0;
}