为了账号安全,请及时绑定邮箱和手机立即绑定

求大神指教!!

求大神指教!!

C
caibi 2015-11-20 23:50:07
 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个赞

就两个错误

  1. 语法错误,该写分号的地方没写分号

  2. 变量没有声明就用了

同学,你真该去学Python

查看完整回答
反对 回复 2015-11-21
  • caibi
    caibi
    能帮我改一下吗?具体哪错了,怎么改,谢谢!还有,python是什么?
  • AAnonymous
    AAnonymous
    你用的是Visual Studio吧,视图->错误视图。然后双击某条错误信息,VS会自动定位到错误行,你根据错误信息看看,是不是少了分号或者这个变量是否声明过。 错误实在太低级了,IDE也提示的非常清楚了,就不用我具体指出来了吧,你就当学习怎么使用IDE吧
  • caibi
    caibi
    求大神看看,提示说我没加分号,变量没声明,可是我觉得我有加分号,有声明。。。。。。原谅我刚学,还有我用的是vc,求给小白解答
点击展开后面1
?
AAnonymous

TA贡献62条经验 获得超31个赞

看了下代码,语法上没有错误。

IDE这么报应该是其他原因了,建议你换个IDE试试。

不过你代码的逻辑错误我倒是找到一个。你这个二分查找没有跟新 mid,程序会死循环的

查看完整回答
反对 回复 2015-11-21
  • 2 回答
  • 0 关注
  • 1379 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信