在C语言中,输入字符串的方法有以下几种:
1. 使用scanf函数:可以使用%s格式说明符来读取字符串。例如:scanf("%s", str);
2. 使用gets函数:可以直接读取一行字符串。例如:gets(str);
3. 使用fgets函数:可以读取一行字符串,并指定最大读取的字符数。例如:fgets(str, sizeof(str), stdin);
4. 使用getchar函数:可以逐个字符地读取字符串。例如:while ((ch = getchar()) != '\n') { ... }
5. 使用scanf函数结合%c格式说明符:可以逐个字符地读取字符串。例如:scanf("%c", &ch);
6. 使用scanf函数结合%[^\n]格式说明符:可以读取一行字符串,包括空格。例如:scanf("%[^\n]", str);
7. 使用scanf函数结合%[^\n]%*c格式说明符:可以读取一行字符串,并清除输入缓冲区中的换行符。例如:scanf("%[^\n]%*c", str);
需要注意的是,使用gets函数和scanf函数结合%c格式说明符进行字符串输入时,容易出现缓冲区溢出的问题,可以使用fgets函数或者scanf函数结合%[^\n]格式说明符来避免此问题。