2197-一维数组元素查找

怎么表示数组中不存在要查找的元素时,输出-1?
#include<stdio.h>
int main()
{
int a[100];
int n,i,t,k;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
scanf("%d",&k);
for(i=0;i<n;i++){
if(k==a[i]){
printf("%d\n",i);
break;
}
}
printf("-1\n");
return 0;
}

我的解答思路和尝试过的方法
我想要达到的结果

设置一个变量flag来标记是否查找到元素

#include<stdio.h>
int main()
{
   int a[100];
   int flag=0;
   int n,i,t,k;
   scanf("%d",&n);
   for(i=0;i<n;i++){
      scanf("%d",&a[i]);
   }
   scanf("%d",&k);
   for(i=0;i<n;i++){
   if(k==a[i]){
      printf("%d\n",i);
      flag=1;
      break;
      }
   }
   if(flag==0)
      printf("-1\n");
   return 0;
}