commit - 2b8a66882ff733f237f41c83507bb9ed4e924d75
commit + 2349130799a9af527e5575e5c6c66e0d2862101a
blob - 42535372f7b2651fde1afe062ecd3e276c16430f
blob + 244cb09ea0e6294b3736359c3a106d95cc33d6e3
--- 3-3.c
+++ 3-3.c
int expand(const char s1[], char s2[]) {
int i, j;
for (i = 0, j = 0; s1[i] != '\0'; i++) {
- if (islwer(s1[i]) && s1[i+1] == '-' && islwer(s1[i+2])) {
+ if ((islwer(s1[i]) && s1[i+1] == '-' && islwer(s1[i+2])) ||
+ (isuppr(s1[i]) && s1[i+1] == '-' && isuppr(s1[i+2])) ||
+ (isdgt(s1[i]) && s1[i+1] == '-' && isdgt(s1[i+2]))) {
for (char c = s1[i]; c < s1[i+2]; c++, j++) {
s2[j] = c;
}
i++;
- } else if (isuppr(s1[i]) && s1[i+1] == '-' && isuppr(s1[i+2])) {
- for (char c = s1[i]; c < s1[i+2]; c++, j++) {
- s2[j] = c;
- }
- i++;
- } else if (isdgt(s1[i]) && s1[i+1] == '-' && isdgt(s1[i+2])) {
- for (char c = s1[i]; c < s1[i+2]; c++, j++) {
- s2[j] = c;
- }
- i++;
} else {
s2[j++] = s1[i];
}