我收到错误main.c:20:1:错误:预期标识符或'(''''''{{}}

时间:2018-04-13 23:56:44

标签: c

我收到错误main.c:20:1:错误:期望的标识符或'(''''''令牌之前。任何人都可以帮我解决这个问题。我是c编程的新手,我的代码如下

#include <stdio.h>
void PrintArray (int number[], int i)
{
  if (i < 0)
    return;
  PrintArray (number, i - 1);
  printf ("Please enter 5 integers:%d\n", i);
  scanf ("%d", &i);
}

int
main ()
{
  int number[5];
  PrintArray (number, 5);
  printf ("Here are your integers:%d", number[4]);
  return 0;
}

{
  int arr[20];
  int l;
  for (l = 0; l < 20; l++)
    {
      arr[l] = rand () % 20;
    }
  for (l = 0; l < 100; l++)
    {
      PrintArray (arr, 20);
      printf ("Here are 20 random integers: %d", arr[l]);
    }
  return 0;
}

2 个答案:

答案 0 :(得分:1)

删除此项以消除您引用的错误。

self.assertRaises(OverflowError,  sunposition.sun_position, lat=error_lat, lon=error_lon, time=error_time)

您可能还必须将以下变量定义移至main的开头。

即。此

  return 0;
}

{

应该去...

  int arr[20];
  int l;

然后检查程序的行为;因为现在只需在调用int number[5]; /* ... here */ PrintArray (number, 5); 后执行主函数之前的自由浮动代码块。这可能不会导致所需的behvaviour。

答案 1 :(得分:0)

主函数之后的代码部分没有声明,试试这个:

#include <stdio.h>
void PrintArray (int number[], int i)
{
  if (i < 0)
    return;
  PrintArray (number, i - 1);
  printf ("Please enter 5 integers:%d\n", i);
  scanf ("%d", &i);
}

int
main ()
{
  int number[5];
  PrintArray (number, 5);
  printf ("Here are your integers:%d", number[4]);
  return 0;
}

int print20(void){
  int arr[20];
  int l;
  for (l = 0; l < 20; l++)
    {
      arr[l] = rand () % 20;
    }
  for (l = 0; l < 100; l++)
    {
      PrintArray (arr, 20);
      printf ("Here are 20 random integers: %d", arr[l]);
    }
  return 0;
}