1 #include <stdio.h>
2 #include <unistd.h>
3 #include <stdlib.h>
4 
main()5 int main()
6 {
7     char swch;
8     char test[100] = {0};
9     unsigned int val;
10     read(0, &swch, 1);
11 
12     if (swch == 'x') {
13         scanf("%07x", &val);
14         if (val == 0xaaaa) {
15             // 0xaaaa
16             puts("%%07x");
17         } else if (val == -0xcdcd) {
18             // -0xcdcd
19             puts("%%07x and negative numbers");
20         } else {
21             puts("nope 0");
22         }
23     } else if (swch == 'd') {
24         scanf("%d", &val);
25         if (val == 133337) {
26             // 1333337
27             puts("%%d");
28         } else if (val == -1337) {
29             // -1337
30             puts("%%d and negative numbers");
31         } else {
32             puts("nope 1");
33         }
34     } else if (swch == 'u') {
35         scanf("%u", &val);
36         if (val == 0xaaaa) {
37             // 43690
38             puts("%%u");
39         } else if (val == -0xcdcd) {
40             // -52685
41             puts("%%u and negative numbers");
42         } else {
43             puts("nope 2");
44         }
45     } else {
46         puts("Unsupported switch");
47     }
48 
49     return 0;
50 }
51