题库 模拟押题卷 题目列表 1 #include <stdio.h> 2 #inclu...
组合题
1 #include <stdio.h>
2 #include <string.h>
3 
4 char base[64];
5 char table[256];
6 char str[256];
7 char ans[256];
8 
9 void init()
10 {
11     for (int i = 0; i < 26; i++) base[i] = 'A' + i;
12     for (int i = 0; i < 26; i++) base[26 + i] = 'a' + i;
13     for (int i = 0; i < 10; i++) base[52 + i] = '0' + i;
14     base[62] = '+', base[63] = '/';
15
16     for (int i = 0; i < 256; i++) table[i] = 0xff;
17     for (int i = 0; i < 64; i++) table[base[i]] = i;
18     table['='] = 0;
19 }
20
21 void decode(char *str)
22 {
23     char *ret = ans;
24     int i, len = strlen(str);
25     for (i = 0; i < len; i += 4) {
26         (*ret++) = table[str[i]] << 2 | table[str[i + 1]] >> 4;
27         if (str[i + 2] != '=')
28             (*ret++) = (table[str[i + 1]] & 0x0f) << 4 | table[str[i + 2]] >>2;
29         if(str[i + 3] != '=')
30                 (*ret++) = table[str[i + 2]] << 6 | table[str[i + 3]];
31 }
32 }
33
34 int main()
35 {
36     init();
37     printf("%d\n", (int)table[0]);
38
39     scanf("%s", str);
40     decode(str);
41     printf("%s\n", ans);
42     return 0;
43 }

?判断题

1)输出的第二行一定是由小写字母、大写字母、数字和”+”、”/”、”=”构成的字符

串。()

2.)可能存在输入不同,但输出的第二行相同的情形。()

3)输出的第一行为”-1”。()

?单选题

4)设输入字符串长度为n,decode函数的时间复杂度为()

5)当输入为”Y3Nx”时,输出的第二行为()

6)当输入为”Y2NmIDIwMjE=”时,输出的第二行为()

1.

A.正确

B.错误

2.

A.正确

B.错误

3.

A.正确

B.错误

4.

A.O(√n)

B.O(n)

C.O(n log n)

D.O(n^2)

5.

A.”csp”

B.“csq”

C.”CSP”

D.“Csp”

6.

A.”ccf2021”

B.”ccf2022”

C.”ccf 2021”

D.”ccf 2022”

第一空(1.5分):______________

第二空(1.5分):______________

第三空(1.5分):______________

第四空(3分):______________

第五空(3分):______________

第六空(3.5分):______________


第 1 题 填空
第 2 题 填空
第 3 题 填空
第 4 题 填空
第 5 题 填空
第 6 题 填空
题目信息
阅读程序
-
正确率
0
评论
30
点击
QQ
微信