字符数组参考题目

竞赛/数组


编程练习题(三)


(2)最短单词查找

题目描述

输入一段由若干个以空格分隔的英文单词组成的文章,文章以英文句点 . 结束,且总字符数不超过 200。
请编程求出文章中 最短的单词

输入样例
We are Oiers.
输出样例
We

(3)加法表达式求值

题目描述

计算仅含有 加法运算 的表达式的值。
该表达式长度不超过 250,中间没有空格或括号,结果保证在整数范围内。

输入样例
12+23+21
输出样例
56

(4)查找相同字符位置

题目描述

考试时老师为了防止抄袭,希望找出两份答案中 相同字符所在的位置
现在输入两行字符串,逐字符比对,输出所有 字符相同的位置编号(编号从 1 开始)。

输入格式

两行,每行一串字符(长度不超过 200)。

输出格式

一行,包含若干个整数,表示相同字符的位置编号,数字之间用空格隔开。

输入样例
I am a girl.I was born in 2002.
I am a giel.I was birn in 2012.
输出样例
1 2 3 4 5 6 7 8 9 11 12 13 14 15 16 17 18 19 21 22 23 24 25 26 27 28 30 31

(5)回文数生成步骤

题目描述

若一个数(首位不为零)从左向右读与从右向左读相同,称为 回文数
例如:

  • 56 + 65 = 121,是回文数;

  • 87 经过以下步骤可得到回文数:

    STEP1:87+78=165
    STEP2:165+561=726
    STEP3:726+627=1353
    STEP4:1353+3531=4884
    

在这里,“一步”指进行了一次 N 进制的加法。

给定一个 N 进制(2 ≤ N ≤ 10 或 N = 16)的数 m(位数 ≤ 20),
求最少经过几步可以得到回文数。
若 30 步内无法得到回文数,则输出 "impossible"

输入格式

一行包含两个数,mn,用空格隔开。

输出格式

一行,仅一个整数,表示步数。若无法得到回文数,输出 "impossible"

输入样例
87 9
输出样例
6

(6)ISBN 校验码判断

题目描述

每一本正式出版的图书都有一个 ISBN 编号,格式为:

x-xxx-xxxxx-x

其中最后一位是 校验码

校验码计算方法如下:

  1. 去掉分隔符 -,取前 9 位数字,从左至右分别乘以 1, 2, …, 9;

  2. 将结果相加;

  3. 取和的结果 mod 11,所得余数即为校验码;

  4. 若余数为 10,则校验码为大写字母 X

例如:
ISBN 0-670-82162-4
计算过程为:

0×1 + 6×2 + 7×3 + 0×4 + 8×5 + 2×6 + 1×7 + 6×8 + 2×9 = 158
158 mod 11 = 4

故校验码为 4。

输入格式

仅一行,为一个符合 ISBN 格式的字符串。

输出格式
  • 若校验码正确,输出:

    Right
    
  • 若校验码错误,输出正确的 ISBN(保持原格式)。

输入样例 1
0-670-82162-4
输出样例 1
Right
输入样例 2
0-670-82162-0
输出样例 2
0-670-82162-4

(7)Wifi 登录模拟

题目描述

使用 Wifi 上网时,通常需要输入正确密码才能登录。
假设密码为 NOIP@CCF,且 登录次数不限
编写程序模拟用户尝试登录的过程。

输入格式
  • 若用户输入 Y,表示继续登录,此时还需输入一行密码;

  • 若输入 N,表示结束尝试。

输出格式

仅一行,输出所有尝试结果的提示信息,按顺序拼接输出:

  • 若密码正确,输出 "Success"

  • 若错误,输出 "Sorry"

输入样例 1
Y
cctv@CCF
Y
NOIP@CC
输出样例 1
SorrySuccess
输入样例 2
Y
cctv@CCF
N
输出样例 2
Sorry

是否希望我帮你把这组题也扩展成一份 课堂讲义模板(含:题意分析 + 核心思路 + 示例代码框架)
那样可以直接发给学生或导入备课文件使用。

posted @ 2025-11-11 22:20  stephen_zuo  阅读(7)  评论(0)    收藏  举报