[問題] 循序搜尋函數消失
題目
‧設計下列循序搜尋函數
int linearSearch( const int array[], int key, int size)
其中
–array[]是整數資料儲存的陣列
–key是要搜尋的值
–size是array的大小
–此函數傳回key在array中的註標。如key不在此陣列中,則傳回-1。
‧在main()中宣告整數陣列a,大小為100。對所有的i, 0<i<100, 將a[i]設為i*2。
‧在main()中讓使用者輸入key值,呼叫linearSearch,然後將結果印出。
這是我寫的 不能執行
#include "stdafx.h"
#include <stdio.h>
#define SIZE 100
int main(int argc, char* argv[])
{
int a[100];
int i;
int num;
int ans;
for(i=0;i<100;i++)
a[i] = i*2;
printf("Please enter an interger: ");
scanf("%d",&num);
ans=linerSearch(a,num,100);
if(ans=-1)
printf("Sorry,we can't find that number.\n");
else
printf("Find! The number is in a[%d].\n",ans);
return 0;
}
int linearSearch(const int array[],int key,int size)
{
for(int i=0;i<size;i++)
{
{
if(array[i]==key)
return key;
}
return -1;
}
}
這是同學寫的 也不能執行
#include "stdafx.h"
#include 〈stdio.h〉
int linerSearch (const int array[], int key, int size)
{
for (int i = 0; i < size; i++)
{
if (array[i] == key)
return i;
}
return -1;
}
int _tmain(int argc, _TCHAR* argv[])
{
int a[100];
int number;
int answer;
for (int i = 0; i < 100; i++)
a[i] = i * 2;
printf ("Please enter a number.\n");
scanf ("%d", &number);
answer = linerSearch (a, number, 100);
if (answer == -1)
printf ("Sorry, we can't find that number.\n");
else
printf ("Find! The number is in a[%d].\n",answer );
return 0;
}
麻煩幫我找到錯誤 謝謝ˊˇˋ
--
※ 發信站: 批踢踢實業坊(ptt.cc)
→
02/23 22:48, , 1F
02/23 22:48, 1F
→
02/23 22:50, , 2F
02/23 22:50, 2F
推
02/23 23:31, , 3F
02/23 23:31, 3F
→
02/23 23:33, , 4F
02/23 23:33, 4F
→
02/26 01:26, , 5F
02/26 01:26, 5F
※ 編輯: hellosmile (218.166.239.230), 05/16/2014 22:04:36