标题:scanf函数录入数据错误
只看楼主
高逆水行舟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-3-19
结帖率:100%
已结贴  问题点数:5 回复次数:9 
scanf函数录入数据错误

#include <stdio.h>
void main()
{
    float r,s;
    printf("请输入半径\n");
    scanf("r=%f\n",&r);
    printf("r=%f\n",r);
}

大侠帮忙看看这是什么鬼
搜索更多相关主题的帖子: include 
2016-03-19 15:02
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
得分:1 
你应该这样输入,r=123,如果想要你图中那样输入,改成scanf("%f\n",&r)。

   唯实惟新 至诚致志
2016-03-19 15:04
a120750
Rank: 4
等 级:业余侠客
威 望:1
帖 子:63
专家分:243
注 册:2016-3-13
得分:0 
scanf("r=%f\n",&r);你这里出问题。。
如果你用r=%f
那么你输入的时候就应该是输入r=半径
2016-03-19 15:10
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
得分:1 
scanf里不要加控制符

一片落叶掉进了回忆的流年。
2016-03-19 15:14
高逆水行舟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-3-19
得分:0 
回复 2楼 qq1023569223
请教你
1.double 和float  为什么会不一样
2.输入半径 12 的时候为什么  回车不能录入结束  ,回车   才结束
2016-03-19 16:08
高逆水行舟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-3-19
得分:0 
回复 4楼 诸葛欧阳
请教你
1.double 和float  为什么会不一样
2.输入半径 12 的时候为什么  回车不能录入结束  ,回车   才结束
2016-03-19 16:09
高逆水行舟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-3-19
得分:0 
回复 3楼 a120750
请教你
1.double 和float  为什么会不一样
2.输入半径 12 的时候为什么  回车不能录入结束  ,回车   才结束
2016-03-19 16:09
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
得分:0 
正确的输入方式

2016-03-19 16:28
a120750
Rank: 4
等 级:业余侠客
威 望:1
帖 子:63
专家分:243
注 册:2016-3-13
得分:3 
回复 7楼 高逆水行舟
先回答第一个问题。。
double和float 为什么会不一样

因为float用%f表示。double用%lf表示。。用double的时候使用 %lf

第二个问题。不能录入结束是因为你在scanf双引号里面多了一个\n。这个\n就是问题所在。
2016-03-19 18:05
高逆水行舟
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-3-19
得分:0 
回复 9楼 a120750
晓得了,谢谢你!
2016-03-19 19:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-462670-1-1.html




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

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