C:\Program Files\Microsoft Visual Studio\MyProjects\jifao\a.c(23) : error C2143: syntax error : missing ';' before 'type'C:\Program Files\Microsoft Visual Studio\MyProjects\jifao\a.c(24) : error C2143: syntax error : missing ';' before 'type'C:\Program Files\Microsoft Visual Studio\MyProjects\jifao\a.c(25) : error C2065: 'mid' : undeclared identifierC:\Program Files\Microsoft Visual Studio\MyProjects\jifao\a.c(25) : error C2065: 'low' : undeclared identifierC:\Program Files\Microsoft Visual Studio\MyProjects\jifao\a.c(25) : error C2065: 'high' : undeclared identifierC:\Program Files\Microsoft Visual Studio\MyProjects\jifao\a.c(26) : error C2065: 'x' : undeclared identifier以上为错误类型,以下为程序,看不懂了。。。。。。冒泡排序法部分无错,烦请费心。#include<stdio.h>main(){ int num[15]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14}; int i,j,t; for(i=0;i<15;i++) { for(j=0;j<14-i;j++) { if(num[j]>num[j+1]) { t=num[j]; num[j]=num[j+1]; num[j+1]=t; } } } for(i=0;i<15;i++) { printf("%d ",num[i]); } printf("\n");int low=0,high=14;int mid,x;mid=(low+high)/2;scanf("%d",&x);while(low<=high){ if(x>num[mid]) { low=mid+1; } else if(x<num[mid]) { high=mid-1; } else { printf("x是数组中第%d个元素\n",mid); x=1; break; }}if(x!=1)printf("无此数\n");}
2 回答
AAnonymous
TA贡献62条经验 获得超31个赞
看了下代码,语法上没有错误。
IDE这么报应该是其他原因了,建议你换个IDE试试。
不过你代码的逻辑错误我倒是找到一个。你这个二分查找没有跟新 mid,程序会死循环的
- 2 回答
- 0 关注
- 1379 浏览
添加回答
举报
0/150
提交
取消