我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ spade /speid/ n. 铲子,铁锹 ]


求教一C程序

#include<stdio.h>
void main()
{
  int i,flag=1,sign,top,btt,mid,s,weizhi;
  int a[15];
  char c;
  printf(" 请输入15个数\n");
  scanf("%d",&a[0]);
  for(i=1;i<15;)
  {
       scanf("%d",&a);
           if(a>a[i-1])
               i++;
           else
               printf("输入错误,请重新输入!!!\n");
  }
  for(i=0;i<15;i++)
       printf("%d\n",a);
  while(flag==1)
  {
       printf("请输入要查找的数\n");
      scanf("%d",&s);
       sign=0;
       top=0;
       btt=14;
       if((s>a[14])||(s<a[0]))
            weizhi=-1;
       while((sign==0)&&(top<=btt))
      {
        mid=(top+btt)/2;
        if(s==a[mid])
        {
         weizhi=mid;
         printf("第%d个数\n",weizhi+1);
         sign=1;
        }
       else if((s>a[mid]))
       top=mid+1;
       else
       btt=mid-1;
       }
       if(sign==0||weizhi==-1)
        printf("未找到\n");
        printf("continue or not(Y/N)?\n");
        scanf("%c",&c);
        if(c=='N'||c=='n')
         flag=0;
   
        
      
  }
}
      
就是二分法查找所输入的数,在程序最后几句
printf("continue or not(Y/N)?\n");
scanf("%c",&c);
if(c=='N'||c=='n')
flag=0
本来要判断是否继续查找,如果输入n则结束,否则继续查找,但是我在运行时发现似乎
scanf("%c",&c);
if(c=='N'||c=='n')
flag=0
这几句失去作用了,运行情况是这样的,见图,就是程序在输出continue or not(Y/N)?后直接输出“请输入要查找的数”,而本来是应该在我输入一字符再判断后才这样的,谁能说说这是怎么回事啊
远程图片:c.JPG
顶端 Posted: 2007-09-28 12:54 | [楼 主]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ wolf /wulf/ n. 狼 ]


for(i=1;i<15;)
  {
      scanf("%d",&a);
          if(a>a[i-1])
              i++;
          else
              printf("输入错误,请重新输入!!!\n");
  }
顶端 Posted: 2007-09-28 13:21 | [1 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ aid /eid/ n. 帮助,援助,助手,辅助设备,救护;vt. 帮助,援助,急救 ]


奇怪,似乎有的字符输不进来
顶端 Posted: 2007-09-28 13:21 | [2 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ shabby /'æbi/ a. 破旧的,褴褛的,卑鄙的 ]


在a后面加中括号中间加i
顶端 Posted: 2007-09-28 13:22 | [3 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ bread /bred/ n. 面包,食物,生计 ]


#include<stdio.h>
void main()
{
  int i,flag=1,sign,top,btt,mid,s,weizhi;
  int a[15];
  char c;
  printf(" 请输入15个数\n");
  scanf("%d",&a[0]);
  for(i=1;i<15;)
  {
       scanf("%d",&a[i]);
           if(a[i]>a[i-1])
               i++;
           else
               printf("输入错误,请重新输入!!!\n");
  }
  for(i=0;i<15;i++)
       printf("%d\n",a[i]);
  while(flag==1)
  {
       printf("请输入要查找的数\n");
      scanf("%d",&s);
       sign=0;
       top=0;
       btt=14;
       if((s>a[14])||(s<a[0]))
            weizhi=-1;
       while((sign==0)&&(top<=btt))
      {
        mid=(top+btt)/2;
        if(s==a[mid])
        {
         weizhi=mid;
         printf("第%d个数\n",weizhi+1);
         sign=1;
        }
       else if((s>a[mid]))
       top=mid+1;
       else
       btt=mid-1;
       }
       if(sign==0||weizhi==-1)
        printf("未找到\n");
        printf("continue or not(Y/N)?\n");
        scanf("%c",&c);
        if(c=='N'||c=='n')
         flag=0;
   
        
      
  }
}
      
顶端 Posted: 2007-09-28 13:25 | [4 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ proficient /prə'fiənt/ a. 熟练的,精通的 ]


以上是本来的程序,一楼有些字符被过滤了


[ 此贴被xuer在2007-09-28 14:05重新编辑 ]
顶端 Posted: 2007-09-28 13:26 | [5 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ together /tə'geðə/ ad. 共同地,在一起,相互,彼引,一致地 ]


谁能说说怎么改啊,这道题太伤脑筋了
顶端 Posted: 2007-09-28 13:53 | [6 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ region /'ri:d3ən/ n. 地区,区域,领域,范围 ]


Quote:
引用第13楼依然随意于2007-09-28 14:12发表的  :

你试一下看看,都是这讨厌的n惹的祸.

果然,不过似乎程序还是有问题,输入Y之后它直接就输出第几个数了,晕死,我对着书输入的
顶端 Posted: 2007-09-29 13:05 | [7 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.013813(s) query 6, Time now is:11-22 20:21, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号