题库 信息学奥赛题库 题目列表 阅读程序:#include <cstdio> #include&nb...
组合题

阅读程序:

#include <cstdio>
#include <cstring>
using namespace std;
char s[10000];
int cnt[26];
int main() {
    scanf("%s", s);
    for (int i = 0; i < strlen(s); ++i) {
        if (cnt[s[i] - 'a'] <= 50) {
            s[strlen(s)] = s[i];
        }
        ++cnt[s[i] - 'a'];
    }
    printf("%s\n", s);
    return 0;
}

假设设初始时输入的字符串长度不超过 500,且不是空串。完成下面的判 断题和单选题:

第1题 判断

将程序第11行中的“++i”改为“i++”,程序运行结果不会改变( )

A.
正确
B.
错误
第2题 判断

将程序第11行改为“for(int i=0,len=strlen(s);i<len;++i)”,程序的运行结果不会改变,同时程序的运行效率将得到提升( )

A.
正确
B.
错误
第3题 判断

对于任意一个出现了a到z中所有的字符、且各字符出现的次数不小于50 的字符串 b,总存在一个字符串 a,使得将字符串 a 输入程序后的运 行结果为字符串b。( )

A.
正确
B.
错误
第4题 判断

程序的输出字符串长度一定不小于1300(注:1300=50×26)。( )


A.
正确
B.
错误
第5题 单选

设输入字符串长度为x(1≤x≤500),输出字符串长度为y,则关于x和y的大小关系正确的是( )。

A.

对于全部的输入字符串,都有x=y。

B.

对于全部的输入字符串,都有x<y。

C.

存在一部分输入字符串,使得 x=y;也存在一部分输入字符串,使得x<y;但是不存在 x>y 的情况。

D.

存在一部分输入字符串,使得 x=y;也存在一部分输入字符串,使得x>y;还存在一部分输入字符串,使得 x<y。

第6题 单选

设字符串w为abcd...z,即从a到z在w中依次出现一次, 共 26 个字符。若输入为 w 重复出现两次的结果(即abcdefg...zabcdefg...z,则输出结果为( )。

A.

w重复出现50次的结果。

B.

w重复出现51次的结果。

C.

w重复出现52次的结果。

D.

w重复出现53次的结果。

题目信息
阅读程序 2021年 练习
-
正确率
0
评论
206
点击