-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathL1-025 正整数A+B.cpp
More file actions
46 lines (45 loc) · 1006 Bytes
/
L1-025 正整数A+B.cpp
File metadata and controls
46 lines (45 loc) · 1006 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
// freopen("in.txt","r",stdin);
// freopen("out.txt","w",stdout);
char num1[10000], num2[10000];
char jl1, jl2;
jl1 = jl2 = 0;
scanf("%s ", num1);
gets(num2);
int t1, t2;
t1 = t2 = 0;
int len1 = strlen(num1);
int len2 = strlen(num2);
if(len1 > 4) jl1 = '?';
if(len2 > 4) jl2 = '?';
for(int i = 0; num1[i] != '\0' && jl1 != '?'; i++) {
if(num1[i] < '0' || num2[i] > '9') {
jl1 = '?';
}
}
for(int i = 0; num2[i] != '\0' && jl2 != '?'; i++) {
if(num2[i] < '0' || num2[i] > '9') {
jl2 = '?';
}
}
if(jl1 != '?') {
sscanf(num1, "%d", &t1);
if(t1 > 1000 || t1 < 1) jl1 = '?';
}
if(jl2 != '?') {
sscanf(num2, "%d", &t2);
if(t2 > 1000 || t2 < 1) jl2 = '?';
}
if(jl1 != '?') printf("%d", t1);
else printf("?");
printf(" + ");
if(jl2 != '?') printf("%d", t2);
else printf("?");
printf(" = ");
if(jl1 == '?' || jl2 == '?') printf("?\n");
else printf("%d\n", t1+t2);
return 0;
}