zoukankan      html  css  js  c++  java
  • CCF NOI1061 Wifi密码

    问题链接CCF NOI1061 Wifi密码




    时间限制: 1000 ms  空间限制: 262144 KB

    题目描述 

      使用Wifi上网时,通常需要输入正确的密码之后,才能登录。假设输入密码没有次数限制(密码通常为八个字符,假设预置密码为NOIP@CCF)。
      请你编写一个程序,模拟使用Wifi上网的登录过程:用户尝试输入密码,直到自己要求结束或者密码正确。

    输入

      输入包含若干行尝试登录信息,每一次尝试对应两行或一行输入:
      第一行,一个字符"Y"或"N ",表示是否继续登录。
      第一行为"Y"时,则还需要输入第二行,八位字符,表示要尝试的密码

    输出

      输出仅一行:密码是否正确的提示信息"Success"或"Sorry"。

    样例输入

    输入1:
    Y
    cctv@CCF
    Y
    NOIP@CCF
    输入2:
    Y
    cctv@CCF
    N
    样例输出

    输出1:
    Sorry
    Success
    输出2:
    Sorry

    数据范围限制

     




    问题分析

      这是一个简单的字符串输入比较问题

     开始写C语言程序时,一行一行读入处理,结果只得了10分,郁闷无比。写本博文时,对照C++语言程序,突然想通了,应该是读单词,100分通过了。

    程序说明 

      语句scanf("%s", score)是读单词(空格隔开)到变量中。

      程序要控制好整体流程,其他主要是字符串比较运算。

    要点详解

    • 函数scanf()中,使用格式"%s"即为读单词



    参考链接:(略)。

    100分通过的C语言程序:

    #include <stdio.h>
    #include <string.h>
    
    #define N 10
    
    char password[] = "NOIP@CCF";
    char yes[] = "Y";
    char no[] = "N";
    
    char score[N];
    
    int main(void)
    {
        for(;;) {
            if(scanf("%s", score) == EOF)
                break;
            if(strcmp(score, no) == 0)
                break;
            else if(strcmp(score, yes) == 0) {
                if(scanf("%s", score) == EOF)
                    break;
                if(strcmp(score, password) == 0) {
                    printf("Success
    ");
                    break;
                } else
                    printf("Sorry
    ");
            }
        }
    
        return 0;
    }


    100分通过的C++语言程序:

    #include <iostream>
    #include <string>
    
    using namespace std;
    
    const string PASSWORD = "NOIP@CCF";
    
    int main()
    {
        string yesno, pw;
    
        for(;;) {
            cin >> yesno;
            if(yesno == "Y") {
                cin >> pw;
                if(pw == PASSWORD) {
                    cout << "Success" << endl;
                    break;
                } else
                    cout << "Sorry" << endl;
            } else if(yesno == "N")
                break;
        }
        return 0;
    }



  • 相关阅读:
    原型,构造函数,实例,__proto__
    To me
    那么再会吧!OI!(HNOI2019退役记)
    中山纪念中学培训杂题(难的都不在这里面qwq)
    关于菜鸡我
    树链剖分讲解
    [luogu] P4823 [TJOI2013]拯救小矮人(贪心)
    [luogu] P4551 最长异或路径(贪心)
    [luogu] P4364 [九省联考2018]IIIDX(贪心)
    [luogu] P4155 [SCOI2015]国旗计划(贪心)
  • 原文地址:https://www.cnblogs.com/tigerisland/p/7563887.html
Copyright © 2011-2022 走看看