c primer plus 10 复习题
作者:互联网
9、
#include <stdio.h> char *s_gets(char *st, int n); int main(void) { char st1[100]; s_gets(st1, 100); puts(st1); return 0; } char *s_gets(char *st, int n) { char *ret_val; ret_val = fgets(st, n, stdin); if(ret_val) { while(*st != '\n' && *st != '\0') st++; if(*st == '\n') *st = '\0'; else while(getchar() != '\n') continue; } return ret_val; }
10、
#include <stdio.h> int strlen2(char *ar); int main(void) { char st1[100] = "3sdfad"; int n; n = strlen2(st1); printf("n: %d.\n", n); return 0; } int strlen2(char * ar) { int count = 0; while(*ar) { count++; ar++; } return count; }
11、
#include <stdio.h> #include <string.h> #define SIZE 100 char *s_gets(char *st, int n); int main(void) { char st1[SIZE]; puts("input the strings."); s_gets(st1, SIZE); puts(st1); return 0; } char *s_gets(char *st, int n) { char *ret_val; int i = 0; char * find; ret_val = fgets(st, n, stdin); if(ret_val) { find = strchr(st, '\n'); if(find) *find = '\0'; else while(getchar() != '\n') continue; } return ret_val; }
标签:10,val,int,ret,st,char,plus,st1,primer 来源: https://www.cnblogs.com/liujiaxin2018/p/15306437.html