| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 668 人关注过本帖
标题:求大神来指点下,这道题目难住我好几天了
只看楼主 加入收藏
zgg373014368
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-3-29
结帖率:66.67%
收藏
已结贴  问题点数:10 回复次数:1 
求大神来指点下,这道题目难住我好几天了
题目是这样
图片附件: 游客没有浏览图片的权限,请 登录注册

我的输出是这样
图片附件: 游客没有浏览图片的权限,请 登录注册

但是正确输出应该是这样
图片附件: 游客没有浏览图片的权限,请 登录注册


我的是输入一个 输出一个
但是应该输入多个  输出多个
我的代码
程序代码:
#include<stdio.h>

typedef struct
{  int key;
}JD;

int zheban()
{  int low,high,mid,found,i,data; //low是下界,high是上界,mid是中间位置
   low=1;  found=0; //found是查找标志:找到为1;没找到为0
   int j=0;
JD r[50];
for(i=0;i<50;i++)
{
scanf("%d",&r[i]);
j++;
if(getchar()=='\n')
break;
}
scanf("%d",&data);

 high=j-1;
   while((low<=high)&&(found==0))
   {  mid=(low+high)/2;
   if(data>r[mid].key) {
       low=mid+1;
       if(low>high)
       printf("%d",mid+1);
       else
    printf("%d ",mid+1);
   
   
   }
   else if(data==r[mid].key) {printf("%d",mid+1); found=1;}
   else { high=mid-1;
   if(low>high)
       printf("%d",mid+1);
       else
    printf("%d ",mid+1);}
   }
   if(found==1)
      printf("\n%d\n",mid+1);
   else
     printf("\n0\n");
   return 0;
}
void main()
{
while(1){
zheban();
if(getchar()=='\n')continue;
else break;
}
}
搜索更多相关主题的帖子: color 
2016-12-23 12:23
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:10 
回复 楼主 zgg373014368
由于涉及缓冲问题,这题应该要开辟动态空间保留数据~思路说了~感觉编程任务还有很多,懒去细看了~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-23 16:20
快速回复:求大神来指点下,这道题目难住我好几天了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018029 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved