标题:请帮我看此两个程序的区别
只看楼主
冷月无痕
Rank: 2
等 级:论坛游民
帖 子:11
专家分:21
注 册:2011-6-8
结帖率:60%
已结贴  问题点数:15 回复次数:5 
请帮我看此两个程序的区别
程序一:
#include<stdio.h>
#define PI 3.1415927
main()
{  double  r,m,s;
   printf("Please input r:");
   scanf("r=%lf\n",&r);

   m=2*PI*r;
   s=PI*r*r;
   printf("%f,%f",m,s);

   getch();
}
程序二:
#include<stdio.h>
#define PI 3.1415927
main()
{  double  r,m,s;
   printf("Please input r:");
   scanf("%lf",&r);

   m=2*PI*r;
   s=PI*r*r;
   printf("%f,%f",m,s);

   getch();
}
为什么在程序一的基础上删去“r=”和“\n”之后程序运行才正确?请高手讲解下~~~~~~··
搜索更多相关主题的帖子: include double 
2011-06-18 16:43
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
得分:12 
scanf("r=%lf\n",&r); 假如输入12.345,那么需要这么输入:

r=12.345\n

scanf对输入要求还是非常严格的。

[ 本帖最后由 ansic 于 2011-6-18 16:51 编辑 ]

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-06-18 16:46
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
得分:0 
画蛇添足 多次一举 scanf就是以回车作为标识的 你的匹配有需要个回车

你说这个回车给谁?

                                         
===========深入<----------------->浅出============
2011-06-18 16:53
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
得分:3 
新手容易犯这种错误。
记住就好了,二楼说的是对的。

南国利剑
2011-06-18 20:06
追风十三少
Rank: 2
等 级:论坛游民
帖 子:17
专家分:42
注 册:2011-6-14
得分:0 
scanf为标准输入语句,不需要再添说明
2011-06-18 20:48
冷月无痕
Rank: 2
等 级:论坛游民
帖 子:11
专家分:21
注 册:2011-6-8
得分:0 
谢谢
2011-06-21 12:29



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




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

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