算法训练 字符串比较

0
11

资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
  strncmp函数的原型为:int strncmp(char *s, char *t, int n);,其功能是比较字符串s和t的前n个字符。如果s<t,返回-1;如果s=t,返回0;如果s>t,返回1。请自己编程实现该函数,并编写一个程序来测试其正确性。
  输入格式:输入有三行,第一行为字符串s,第二行为字符串t,第三行为整数n。
  输出格式:输出只有一个整数,即比较结果。
输入输出样例
样例输入
world
word
4
样例输出
1

ASCII可显示字符

二进制 十进制 十六进制 图形

00100000
32
20
(空格)(␠)

00100001
33
21
!

00100010
34
22

00100011
35
23
#

00100100
36
24
$

00100101
37
25
%

00100110
38
26
&

00100111
39
27

00101000
40
28
(

00101001
41
29
)

00101010
42
2A
*

00101011
43
2B
+

00101100
44
2C
,

00101101
45
2D

00101110
46
2E
.

00101111
47
2F
/

00110000
48
30
0

00110001
49
31
1

00110010
50
32
2

00110011
51
33
3

00110100
52
34
4

00110101
53
35
5

00110110
54
36
6

00110111
55
37
7

00111000
56
38
8

00111001
57
39
9

00111010
58
3A
:

00111011
59
3B
;

00111100
60
3C
<

00111101
61
3D
=

00111110
62
3E
>

00111111
63
3F
?

二进制 十进制 十六进制 图形

01000000
64
40
@

01000001
65
41
A

01000010
66
42
B

01000011
67
43
C

01000100
68
44
D

01000101
69
45
E

01000110
70
46
F

01000111
71
47
G

01001000
72
48
H

01001001
73
49
I

01001010
74
4A
J

01001011
75
4B
K

01001100
76
4C
L

01001101
77
4D
M

01001110
78
4E
N

01001111
79
4F
O

01010000
80
50
P

01010001
81
51
Q

01010010
82
52
R

01010011
83
53
S

01010100
84
54
T

01010101
85
55
U

01010110
86
56
V

01010111
87
57
W

01011000
88
58
X

01011001
89
59
Y

01011010
90
5A
Z

01011011
91
5B
[

01011100
92
5C
\

01011101
93
5D
]

01011110
94
5E
^

01011111
95
5F
_

二进制 十进制 十六进制 图形

01100000
96
60
`

01100001
97
61
a

01100010
98
62
b

01100011
99
63
c

01100100
100
64
d

01100101
101
65
e

01100110
102
66
f

01100111
103
67
g

01101000
104
68
h

01101001
105
69
i

01101010
106
6A
j

01101011
107
6B
k

01101100
108
6C
l

01101101
109
6D
m

01101110
110
6E
n

01101111
111
6F
o

01110000
112
70
p

01110001
113
71
q

01110010
114
72
r

01110011
115
73
s

01110100
116
74
t

01110101
117
75
u

01110110
118
76
v

01110111
119
77
w

01111000
120
78
x

01111001
121
79
y

01111010
122
7A
z

01111011
123
7B
{

01111100
124
7C
|

01111101
125
7D
}

01111110
126
7E
~

这道题注意格式间的转化、、

 1 #include<iostream>
 2 #include<string>
 3 //author:QIANG
 4 using namespace std;
 5 int main(){
 6     string s1,s2;
 7     cin>>s1>>s2;
 8     int n,n1,n2;
 9     char c1,c2;
10     cin>>n;
11     int i;
12     for(i=0;i<n;i++){
13         c1=s1[i];
14         c2=s2[i];
15         n1=c1-'A';
16         n2=c2-'A';
17         if(n1>n2){
18             cout<<1;
19             break;
20         }
21         if(n1<n2){
22             cout<<-1;
23             break;
24         }
25     }
26     if(i>=n){
27         cout<<0;
28     }
29     return 0;
30 }

<

发布回复

请输入评论!
请输入你的名字