二分法查找无法运行出正确结果

 ###### 二分法查找编译没有报错但是实现不了功能

//查找
        int l=0,r=9,t,mid;
        printf("\n输入要查找的值(不查找输入-1):");
        scanf("%d",&t); 
        while(t!=-1)
        {
            while(lmid=(l+r)/2;
                if(tmid]){
                    l=mid+1;
                }
                else if(t>a[mid]){
                    r=mid-1;
                }
                else {
                printf("学号为:%d",s[mid]);
                break;
                }
            }
            if(l>r){
                printf("NO FOUND!!!");
            }
            printf("\n输入要查找的值(不查找输入-1):");
            scanf("%d",&t);
        }

 

提供你的测试数据
while(l<=r)
另外外层while循环开始前,应该加上l=0,r=9,否则第二次循环时,l和r还是上次循环结束的值