| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2010 人关注过本帖
标题:求助! 请问 scanf 读取不够不执行下一步是什么情况?
取消只看楼主 加入收藏
xxx363710
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2014-8-4
收藏
 问题点数:0 回复次数:5 
求助! 请问 scanf 读取不够不执行下一步是什么情况?
各位大神求帮助,初学者一枚,谢谢了!

源码如下:

/*#include <stdio.h>

double cube_root(double v);

int
main(int argc, char *argv[]) {
    int num;
    double x,y,z,w;
    printf("Please enter 3 doubles:");
    num = scanf("%lf%lf%lf%lf",&x,&y,&z,&w);
    printf("You entered %d values\n",num);
return 0;
}
*/


问题: 当我输入不够4个double值时,程序不能继续执行printf("You entered %d values\n",num)语句,请问哪里出错了?
谢谢各位!!
搜索更多相关主题的帖子: include 下一步 double return values 
2014-08-04 10:00
xxx363710
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2014-8-4
收藏
得分:0 
请看过的大神帮助下,应该是我对scanf的理解有误,但是我查出的和我的应该是一样的,所以很疑惑,请大神们指点!
2014-08-04 10:39
xxx363710
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2014-8-4
收藏
得分:0 
回复 3 楼 embed_xuel
谢谢!可是我记得以前是这样的,如果程序写的读取4个,打上去5个只会读取4个,打上去3个只会读取三个,这个程序如果我不输入数字也可以显示读取0个,就是只能0或者4,很郁闷
2014-08-04 14:04
xxx363710
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2014-8-4
收藏
得分:0 
回复 4 楼 j521887
这里的num应该是读到数的个数,所以是int
2014-08-04 14:06
xxx363710
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2014-8-4
收藏
得分:0 
回复 7 楼 vvvcuu
谢谢版主,已经明白了,如果我输入: 1 2 3,就可以printf "You entered 3 values"了。

另外有个问题求教,就是double 和 float 的问题:

/*#include <stdio.h>
int
main(int argc, char *argv[]) {
    int num;
    double x;
    float y;
    printf("Please enter 2 values:");
    scanf("%lf%f",&x,&y);
    printf("x = %f \n",x);
    printf("y = %f \n",y);
    printf("x2 = %10.8f \n",x);
    printf("y2 = %10.8f \n",y);
return 0;
}*/

得到的是以下结果:
Please enter 2 values:
2.123456789
2.123456789
x = 2.123457
y = 2.123457
x2 = 2.12345679
y2 = 2.12345672
请按任意键继续. . .

对于输出的x和y,我觉得是默认float和double都是6位小数?可是我尝试变成%10.8f,结果还是可以输出,但是float的数据有差错,请问这是为什么,我觉得似乎有很深奥的东西。

谢谢!麻烦了~
2014-08-04 14:44
xxx363710
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2014-8-4
收藏
得分:0 
明白了,谢谢了!
2014-08-04 17:18
快速回复:求助! 请问 scanf 读取不够不执行下一步是什么情况?
数据加载中...
 
   



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

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