|
阅读:9087回复:4
为什么我们学校测试网站上返回10 而不是not found?
为什么我们学校测试网站上返回10 而不是not found?
#include <stdio.h> #include<stdlib.h> int search(int a[],int n,int key); //n表示数组元素个数,key表示要查找的数据 int main() { int i,r,b[10] ,key; for ( i = 0; i < 10; i++) { scanf("%d",&b[i]); } scanf("%d",&key); r = search(b, 10, key); //函数调用 if( r != -1 ) printf("%d\n",r); else printf("not found\n"); } int search(int a[],int n,int key) { int i = 0; for( ; i < n && a[i] != key; i++); if (a[i] == key) return i; if ( i == n) return -1; } |
|
|
沙发#
发布于:2021-12-09 20:05
问了一下我们老师,说是服务器数据量太大,刚好第十个数是10,所以这样越界了。应该是这样。
|
|
|
板凳#
发布于:2021-12-09 16:36
|
|
|
|
地板#
发布于:2021-12-09 14:07
doubleyong:测试了一下,没有问题呀,输入了一个没有的数,正常返回了not found ;你的测试数据是什么哦回到原帖测试数据是1 2 3 4 5 6 7 8 90 10 查找的数是9 按理说是 not found 但是 我们学校OJ上测试结果 10 |
|
|
4楼#
发布于:2021-12-09 10:29
测试了一下,没有问题呀,输入了一个没有的数,正常返回了not found ;你的测试数据是什么哦
|
|
|