C++里的问题:数据查找

问题描述

在一个数据序列中查找某个数,找到输出其所在位置,否则输出-1。

输入描述

第1行:一个整数n(0 < n < 1000),表示序列的数据个数。 第2行:n个整数构成的数据序列。 第3行:一个特查数据x。

输出描述

特查数据x在n个数据序列中第1次出现的位置(由1开始)。若x不在序列中,输出-1。

样例输入

5
6 2 1 8 9
1

样例输出

3

下面是俺的代码,就是写不对啊,也不知道怎么写。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m,k=0;
int a[k];
scanf("%d\n",&n);
for( int i=0;i<n;i++)
{
scanf("%d ",&a[k]);
k++;
}
scanf("%d\n",&m);
if(m==a[k]) printf("%d",k+1);
else printf("-1");
return 0;
}

呃呃呃
scanf怎么能写\n呢

首先你的数组定义时就出了问题,k=0,0个元素?,数组空间要定义足额的