zoukankan      html  css  js  c++  java
  • 2014年王道论坛研究生机试练习赛(一) set 1 GrassLand密码

    题目

    根据手机按键上的对应关系将字母转成数字, 简单模拟题

    总结

    1. scanf("%s", input); 不需要加上 &

    2. 字符串的终结符是 ''

    3. scanf 和 printf 打印的都是 char*, 不能是 int*

    代码

    #include <iostream>
    #include <cstring>
    #include <stdio.h>
    using namespace std;
    int map[50];
    
    void init() {
        for(int i = 0; i < 18; i ++) {
            map[i] = i/3 + 2;
        }
        map[18] = 7;
    
        for(int i = 19; i < 22; i ++)
            map[i] = 8;
        for(int i = 22; i < 26; i ++)
            map[i] = 9;
    }
    
    char ins[11000];
    char outs[11000];
    
    int main() {
        init();
        //freopen("testcase.txt", "r", stdin);
        while(scanf("%s", ins) != EOF) {
            //printf("%s
    ", ins);
            int len = strlen(ins);
            for(int i = 0; i < len; i ++) {
                outs[i] = map[ins[i]-'a']+'0';
            }
            outs[len] = '';
            printf("%s
    ", outs);
        }
        return 0;
    }
  • 相关阅读:
    day_07 深浅拷贝
    day_06 再谈编码
    day_05 字典
    day_04 列表
    day_03 字符串
    HDU 1049 Climbing Worm
    HDU 1720 A+B Coming
    Pascal向C++的跨越
    B-Boxes
    喵哈哈村的狼人杀大战(4)
  • 原文地址:https://www.cnblogs.com/xinsheng/p/3576478.html
Copyright © 2011-2022 走看看