| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 978 人关注过本帖
标题:编译正常,运行不正常。在第二个scanf里%前面加一个空格就正常
只看楼主 加入收藏
X1280354690
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-1-7
结帖率:0
收藏
已结贴  问题点数:20 回复次数:9 
编译正常,运行不正常。在第二个scanf里%前面加一个空格就正常
#include<stdio.h>
#include<ctype.h>
int main(void)
{
  char a = '0';
  double b = 0.0;
  double d =0.0;
  int c =0;
  printf("这个程序用来计算任意数的平均值");
  for(;;)
    {
      printf("\n输入一个数:");
      scanf("%lf",&b);
      d +=b;
      ++c;
      printf("\n是否要继续输入(y是,n否):");
      scanf("%c",&a);
      if(tolower(a) == 'n')
    break;
    }
  printf("\n%lf\n",d/c);
  return 0;
}

编译正常,运行不正常。在第二个scanf里%前面加一个空格就正常,哪位大牛知道怎么回事
搜索更多相关主题的帖子: include double return 平均值 
2017-01-07 21:06
bjut_Allen
Rank: 9Rank: 9Rank: 9
来 自:平乐园工业技术学校
等 级:蜘蛛侠
威 望:8
帖 子:323
专家分:1223
注 册:2016-10-16
收藏
得分:7 
第一个scanf()输入时你最后打了一个回车被scanf("%c",&a)读取了,当然运行错误
scanf(" %c",&a)中&c前面加空格(空白符)把回车(空白符)跳过了,可以正常读取你第二次输入的字符(Y/N)。

Code is my life.
2017-01-07 21:17
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:7 
回复 2楼 bjut_Allen
考完C么,能否把C的考题发来看看(明天我们考C)~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-01-07 21:23
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:7 
输入队列中还有一个回车符吧,加空格吸收了回车。输入中空格和回车都表示结束。
2017-01-07 21:25
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
scanf("%lf%*c");//用%*c来吸收回车~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-01-07 21:28
bjut_Allen
Rank: 9Rank: 9Rank: 9
来 自:平乐园工业技术学校
等 级:蜘蛛侠
威 望:8
帖 子:323
专家分:1223
注 册:2016-10-16
收藏
得分:0 
回复 3楼 九转星河
卷子没发,你们上机还是手写?把链表插入删除看看吧~到时候遇到能写的快点,文件里面那几个函数看看就行

Code is my life.
2017-01-07 21:36
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 6楼 bjut_Allen
笔试~链表插入和删除要上机才好调试,插入和删除要考虑头尾节点的问题~而且还习惯写双向链表~笔写,对于我来说错了很正常,我汗~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-01-07 21:49
bjut_Allen
Rank: 9Rank: 9Rank: 9
来 自:平乐园工业技术学校
等 级:蜘蛛侠
威 望:8
帖 子:323
专家分:1223
注 册:2016-10-16
收藏
得分:0 
回复 7楼 九转星河
九版这么强,没问题。。

Code is my life.
2017-01-07 22:15
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 8楼 bjut_Allen
考试就考到了指针~你传说中的链表操作和文件的输入输出竟然没考~~~~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-01-08 11:07
bjut_Allen
Rank: 9Rank: 9Rank: 9
来 自:平乐园工业技术学校
等 级:蜘蛛侠
威 望:8
帖 子:323
专家分:1223
注 册:2016-10-16
收藏
得分:0 
回复 9楼 九转星河
hhh岂不妙哉

Code is my life.
2017-01-08 12:43
快速回复:编译正常,运行不正常。在第二个scanf里%前面加一个空格就正常
数据加载中...
 
   



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

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