| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1215 人关注过本帖
标题:帮忙看看哪里出问题了~~~~~代码没有语法错误,但是运行上不符合我的想法
只看楼主 加入收藏
御坂美琴
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:魔術の禁書目錄
等 级:小飞侠
威 望:9
帖 子:952
专家分:2929
注 册:2010-8-18
收藏
得分:0 
以下是引用我菜119在2010-10-11 20:06:23的发言:

敢问一下我的这个改法为什么是不标准的!!!

单凭一个fflush(stdin)就知道了,最严重的问题还并不光是不标准,楼主说的是一行里输入完,你有留意么?

永远为正义而奋斗,锄强扶弱的Level 5 超能力者
とある魔術の禁書目錄インデックス__御み坂さか美み琴こと
http://bbs.bccn.net/space.php?action=threads&uid=483997
2010-10-11 21:49
我菜119
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:938
专家分:1756
注 册:2009-10-17
收藏
得分:0 
回复 11楼 御坂美琴
我还真没有看清楚楼主那个程序的要求,他的那个程序我在调试的时候按下回车键没有什么结果,我只是把这个修改了一下!!!!谢谢御版的提醒!

愿用余生致力编程
2010-10-12 09:49
xx342508809
Rank: 2
等 级:论坛游民
帖 子:89
专家分:51
注 册:2010-7-28
收藏
得分:0 
循环不是死循环~~~~~~~~~~~~~~~~~我验证过了
2010-10-12 20:06
xx342508809
Rank: 2
等 级:论坛游民
帖 子:89
专家分:51
注 册:2010-7-28
收藏
得分:0 
传图你们看~~~~~~~~~~~
2010-10-12 20:06
xx342508809
Rank: 2
等 级:论坛游民
帖 子:89
专家分:51
注 册:2010-7-28
收藏
得分:0 
以下是引用日的起烟烟在2010-10-11 19:07:05的发言:

LZ代码的问题主要还是在处理优先级上··

如果输入 33+55*45+21=

那么在处理掉输入缓冲的情况下··依照LZ的代码来计算只是在计算  ((33+55)* 45 )+ 21
可能问题就在这里~~~~~~~~~
2010-10-12 20:11
xx342508809
Rank: 2
等 级:论坛游民
帖 子:89
专家分:51
注 册:2010-7-28
收藏
得分:0 
按理算的话~~我这个是已经算出前面的然后把算出的值赋给b了啊~~~~~~~~应该没什么问题啊~~~~~~~~~~~~
2010-10-12 20:12
xx342508809
Rank: 2
等 级:论坛游民
帖 子:89
专家分:51
注 册:2010-7-28
收藏
得分:0 
御版主能给个提示怎么处理优先级的问题吗?谢谢!!我再想想~~~
2010-10-12 20:23
烧包谷
Rank: 2
等 级:论坛游民
威 望:2
帖 子:60
专家分:69
注 册:2010-10-11
收藏
得分:0 
while(1)这个不是死循环吗?
2010-10-12 20:39
日的起烟烟
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:137
专家分:129
注 册:2010-2-27
收藏
得分:8 
以下是引用我菜119在2010-10-12 09:49:01的发言:

我还真没有看清楚楼主那个程序的要求,他的那个程序我在调试的时候按下回车键没有什么结果,我只是把这个修改了一下!!!!谢谢御版的提醒!


为什么不标准??

fflush :

原型: int fflush( FILE *fp ) ;

调用该函数··可将缓冲区中任何未写的数据发送到fp指向的输出文件里,这个过程就刷新缓冲区··

如果fp是空指针··就会刷新掉所以的输出缓冲。

但是, 对一个输入流使用该函数效果是没有定义的,只要最近使用的流不是输入操作,就可以对该流使用该函数。


也就是说你的用法是没有定义的。。。所以说不标准!

我一般是这样解决刷新输入缓冲的:

#define CLSIO { int c ; while(  ( c=getchar() != '\n' ) &&  c!=EOF  ) ; }

在需要刷新输入的地方使用CLSIO



2010-10-12 20:45
我菜119
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:938
专家分:1756
注 册:2009-10-17
收藏
得分:2 
回复 19楼 日的起烟烟
但是, 对一个输入流使用该函数效果是没有定义的,只要最近使用的流不是输入操作,就可以对该流使用该函数。
你说的这个我不是很理解????难道scanf函数不是从键盘流中读取数据吗??我刷新该stdin的缓冲区会没有效果???好像不是这样吧?????请版主解释一下!!!

愿用余生致力编程
2010-10-12 21:07
快速回复:帮忙看看哪里出问题了~~~~~代码没有语法错误,但是运行上不符合我的想法 ...
数据加载中...
 
   



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

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