设为首页 加入收藏

TOP

POJ 2328 Guessing Game(一道让我想哭的水题!)
2015-07-20 17:43:07 来源: 作者: 【 】 浏览:3
Tags:POJ 2328 Guessing Game 一道 水题

【题意简述】:就是猜数,我想大家一定会在电视上看过这样类似的节目。

【分析】:WA到死,本来就应该是一道简单的水题,但是由于我本人也很水,在控制字符的输入上有了点小问题,所以做了很久!想的也有点杂,有点多!还是题做得少。

这个是我WA到死的代码!!

// WA 代码!! 

#include
  
   
#include
   
     using namespace std; int main() { int a; char ans[10]; while(1) { bool flag = false; int Max = 100; int Min = 0; cin>>a; if(a == 0) break; getchar(); // 注意这里要加上这个! gets(ans); while(1) { if(strcmp(ans,"right on") == 0) break; if(strcmp(ans,"too high") == 0&&a
    
     Min) // 同样这里也是!! Min = a; cin>>a; getchar(); // 注意这里要加上这个! gets(ans); } if( a < Min || a > Max ) printf("Stan is dishonest\n"); else printf("Stan may be honest\n"); } return 0; }
    
   
  



这个是AC代码:

// AC 代码!! 

#include
  
   
#include
   
     using namespace std; int main() { int a; char ans[10]; while(1) { bool flag = false; int Max = 100; int Min = 0; cin>>a; if(a == 0) break; getchar(); // 注意这里要加上这个! gets(ans); while(1) { if(strcmp(ans,"right on") == 0) break; if(strcmp(ans,"too high") == 0&&a
    
     Min) Min = a; cin>>a; getchar(); // 注意这里要加上这个! gets(ans); } if( a > Min && a < Max ) printf("Stan may be honest\n"); else printf("Stan is dishonest\n"); } return 0; }
    
   
  

看到两个代码的不同了吗?其实就只是我的第一个WA的代码少了个等号,应该是

if( a <= Min || a >= Max )  //  要有等号!!!
			printf("Stan is dishonest\n");


这种边界是最容易出错的地方!!以后要多加注意!

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇zoj 3817 Chinese Knot(hash+暴力) 下一篇Memset给非字符型数组进行赋值

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C++中智能指针的性能 (2025-12-25 03:49:29)
·如何用智能指针实现c (2025-12-25 03:49:27)
·如何在 C 语言中管理 (2025-12-25 03:20:14)
·C语言和内存管理有什 (2025-12-25 03:20:11)
·为什么C语言从不被淘 (2025-12-25 03:20:08)