正在载入在线练习界面,本页内容可直接阅读…

AK CSP › NOIP 普及 2011 第一轮真题 › 第 24 题

NOIP 普及 2011 第一轮 第 24 题:电话号码中的字母按键映射

阅读程序 · 数组与字符串 · 答案 22366472011

题目

```
#include<iostream>
#include<string>
using namespace std;

int main()
{
    string map= "2223334445556667778889999";
    string tel;
    int i;
    cin>>tel;
    for(i=0;i<tel.length();i++)
       if((tel[i]>='0') && (tel[i]<='9') )
           cout<<tel[i];
       else if( (tel[i]>='A') && (tel[i]<='Z'))
           cout<<map[tel[i]-'A'];
    cout<<endl;
    return 0;
}
```
输入:CCF-NOIP-2011

本小题

阅读程序写结果

答案

22366472011

题解

考点定位

本题考「查表映射模拟」,对应大纲 4.2.1 程序模拟(难度【2】)。

解题过程

map 是手机键盘字母映射:ABC→2、DEF→3、GHI→4、JKL→5、MNO→6、PQRS→7、TUV→8、WXYZ→9。

CCF-NOIP-2011:C=2,C=2,F=3 → 223;N=6,O=6,I=4 → 664;数字 2011 原样。

输出:22366472011。

易错提醒

① PQRS 四字母共键 7、WXYZ 共键 9(映射表长 26−1 的细节:末位 'Z' 与 'Y' 同为 9);② 连字符不输出。

真题版权归 CCF 所有,本站仅用于非商业教学用途。页面加载后可直接在线作答,作答记录保存在本浏览器或账号中。 京ICP备2026056990号-1 京公网安备11010502062986号