12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- /* compare.c -- this will work */
- #include <stdio.h>
- #include <string.h> // declares strcmp()
- #define ANSWER "Grant"
- #define SIZE 40
- char * s_gets(char * st, int n);
- int main(void)
- {
- char try[SIZE];
-
- puts("Who is buried in Grant's tomb?");
- s_gets(try, SIZE);
- while (strcmp(try,ANSWER) != 0)
- {
- puts("No, that's wrong. Try again.");
- s_gets(try, SIZE);
- }
- puts("That's right!");
-
- return 0;
- }
- char * s_gets(char * st, int n)
- {
- char * ret_val;
- int i = 0;
-
- ret_val = fgets(st, n, stdin);
- if (ret_val)
- {
- while (st[i] != '\n' && st[i] != '\0')
- i++;
- if (st[i] == '\n')
- st[i] = '\0';
- else // must have words[i] == '\0'
- while (getchar() != '\n')
- continue;
- }
- return ret_val;
- }
|