Provide high quality solutions to the exercises in "The Practice of Programming" by Kernighan and Pike, also referred to as "tpop".
- Exercise 1-2. Improve this function:
? int smaller(char *s, char *t) { ? if (strcmp(s, t) < 1) ? return 1; ? else ? return 0; ? }- Exercise 1-4. Improve each of these fragments:
? if ( !(c == 'y' || c == 'Y') ) ? return; ? length = (length < BUFSIZE) ? length : BUFSIZE; ? flag = flag ? 0 : 1; ? quote = (*line == '"') ? 1: 0; ? if (val & 1) ? bit = 1; ? else ? bit = 0;- Exercise 1-5. What is wrong with this excerpt?
? int read(int *ip) { ? scanf("%d", ip); ? return *ip; ? } ? insert(&graph[vert], read(&val), read(&ch));- Exercise 1-6. List all the different outputs this could produce with various orders of evaluation:
? n = 1; ? printf("%d, %d\n", n++, n++);Try it on as many compilers as you can, to see what happens in practice. solution