-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathJAVAC.cpp
78 lines (73 loc) · 1.55 KB
/
JAVAC.cpp
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
char arr[150];
while (scanf("%s", arr) != EOF) {
int i, flag = 0, cnt1 = 0, cnt2 = 0, java = 0, cplus = 0;
if (arr[0] == '_' || arr[strlen(arr) - 1] == '_' || (arr[0] >= 'A' && arr[0] <= 'Z') || (arr[0] >= 48 && arr[0] <= 57)) {
flag = 1;
} else {
for (i = 0;i < strlen(arr);i++) {
if (arr[i] == '_') {
//printf("hello\n");
cnt1++;
if ((arr[i + 1] >= 97 && arr[i + 1] <= 122) || (arr[i + 1] >= 48 && arr[i + 1] <= 57)) {
i++;
} else {
flag = 1;
//break;
}
java = 1;
}
if (arr[i] >= 65 && arr[i] <= 90) {
cnt2++;
if (arr[i - 1] == '_' || arr[i + 1] == '_') {
flag = 1;
//break;
} else {
i++;
}
cplus = 1;
}
//printf("cnt1 = %d %d\n", cnt1, cnt2);
if (cnt1 && cnt2) {
flag = 1;
break;
}
}
}
if (flag == 1) {
printf("Error!\n");
} else {
if (java) {
for (i = 0;i < strlen(arr);i++) {
if (arr[i] == '_') {
if (arr[i + 1] >= 48 && arr[i + 1] <= 57) {
printf("%c", arr[i + 1]);
i++;
} else if (arr[i + 1] >= 97 && arr[i + 1] <= 122) {
printf("%c", arr[i + 1] - 32);
i++;
}
} else {
printf("%c", arr[i]);
}
}
} else if (cplus) {
for (i = 0;i < strlen(arr);i++) {
if (arr[i] >= 65 && arr[i] <= 90) {
printf("_%c", arr[i] + 32);
} else {
printf("%c", arr[i]);
}
}
} else {
printf("%s", arr);
}
printf("\n");
}
}
return 0;
}