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

« 1 2» Pages: ( 1/2 total )
xuer



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

5come5帮你背单词 [ aggression /ə'greən/ 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 | [楼 主]
依然随意



性别: 帅哥 状态: 该用户目前不在线
等级: 前途无量
家族: ⊙JAY菊爱园⊙
发贴: 5922
威望: 0
浮云: 760
在线等级:
注册时间: 2006-09-25
最后登陆: 2022-10-30

5come5帮你背单词 [ hot /hot/ n. 热的,炎热的,辣的,辛辣的,急躁的,激动的,热衷的 ]


for(i=1;i<15;)
  {
      scanf("%d",&a);
          if(a>a[i-1])
              i++;
          else
              printf("输入错误,请重新输入!!!\n");
  }
你这段程序想做什么?  我怎么看不明白,调试也通不过.
顶端 Posted: 2007-09-28 13:17 | [1 楼]
依然随意



性别: 帅哥 状态: 该用户目前不在线
等级: 前途无量
家族: ⊙JAY菊爱园⊙
发贴: 5922
威望: 0
浮云: 760
在线等级:
注册时间: 2006-09-25
最后登陆: 2022-10-30

5come5帮你背单词 [ revelation /revi'leiən/ n. 揭示,透露,显示,被揭示的真相,新发现 ]


  for(i=0;i<15;i++)
      printf("%d\n",a);
还有这个,不明白.
顶端 Posted: 2007-09-28 13:19 | [2 楼]
xuer



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

5come5帮你背单词 [ absent /'æbsənt, əb'sent/ a. 缺席的;缺乏的,不在意的,茫然的 ]


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



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

5come5帮你背单词 [ proficiency /prə'fiənsi/ n. 熟练,精通 ]


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



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

5come5帮你背单词 [ arrange /ə'reind3ə/ vt. 安排,准备,整理,排列;vi. 安排,准备 ]


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



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

5come5帮你背单词 [ ocean /'əuən/ 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 | [6 楼]
xuer



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

5come5帮你背单词 [ fifteen /'fif'ti:n/ num. 十五 ]


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


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



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

5come5帮你背单词 [ worm /wə:m/ n. 虫,蠕虫 ]


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



性别: 帅哥 状态: 该用户目前不在线
等级: 前途无量
家族: ⊙JAY菊爱园⊙
发贴: 5922
威望: 0
浮云: 760
在线等级:
注册时间: 2006-09-25
最后登陆: 2022-10-30

5come5帮你背单词 [ retell /'ri:'tel/ vt. 复述,再讲 ]


确实有点诡异, scanf读取标准输入应该是阻塞的呀.
顶端 Posted: 2007-09-28 14:02 | [9 楼]
zul





性别: 保密 状态: 该用户目前不在线
等级: 品行端正
发贴: 167
威望: 0
浮云: 1194
在线等级:
注册时间: 2007-04-05
最后登陆: 2008-06-29

5come5帮你背单词 [ own /əun/ a. 自己的;pron. 特有的;vt. 拥有 ]


每次调用scanf之前调用 fflush(stdin) 把输入缓冲区清除看一下
顶端 Posted: 2007-09-28 14:08 | [10 楼]
依然随意



性别: 帅哥 状态: 该用户目前不在线
等级: 前途无量
家族: ⊙JAY菊爱园⊙
发贴: 5922
威望: 0
浮云: 760
在线等级:
注册时间: 2006-09-25
最后登陆: 2022-10-30

5come5帮你背单词 [ lighten /'laitn/ vt. 减轻(负担),缓和,使轻松愉快 ]


Quote:
引用第8楼xuer于2007-09-28 13:53发表的  :
谁能说说怎么改啊,这道题太伤脑筋了

知道了,
顶端 Posted: 2007-09-28 14:09 | [11 楼]
依然随意



性别: 帅哥 状态: 该用户目前不在线
等级: 前途无量
家族: ⊙JAY菊爱园⊙
发贴: 5922
威望: 0
浮云: 760
在线等级:
注册时间: 2006-09-25
最后登陆: 2022-10-30

5come5帮你背单词 [ elite /ei'li:t/ n. 精华,名流 ]


把scanf("%c",&c);改成scanf("%c\n",&c)只有这样,\n才不回付给c
顶端 Posted: 2007-09-28 14:10 | [12 楼]
依然随意



性别: 帅哥 状态: 该用户目前不在线
等级: 前途无量
家族: ⊙JAY菊爱园⊙
发贴: 5922
威望: 0
浮云: 760
在线等级:
注册时间: 2006-09-25
最后登陆: 2022-10-30

5come5帮你背单词 [ certainly /'sə:tənli/ ad. 一定,必定,当然,可以 ]


Quote:
引用第8楼xuer于2007-09-28 13:53发表的  :
谁能说说怎么改啊,这道题太伤脑筋了

你试一下看看,都是这讨厌的\n惹的祸.
顶端 Posted: 2007-09-28 14:12 | [13 楼]
xuer



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

5come5帮你背单词 [ bathe /beið/ vt. 洗澡,把…浸到液体中;vi. 洗澡,沐浴,游泳 ]


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

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

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

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