在C語言中,輸入字符串的方法有以下幾種:
使用scanf函數:可以使用%s格式說明符來讀取字符串。例如:scanf(“%s”, str);
使用gets函數:可以直接讀取一行字符串。例如:gets(str);
使用fgets函數:可以讀取一行字符串,并指定最大讀取的字符數。例如:fgets(str, sizeof(str), stdin);
使用getchar函數:可以逐個字符地讀取字符串。例如:while ((ch = getchar()) != ‘\n’) { … }
使用scanf函數結合%c格式說明符:可以逐個字符地讀取字符串。例如:scanf(“%c”, &ch);
使用scanf函數結合%[^\n]格式說明符:可以讀取一行字符串,包括空格。例如:scanf(“%[^\n]”, str);
使用scanf函數結合%[^\n]%*c格式說明符:可以讀取一行字符串,并清除輸入緩沖區中的換行符。例如:scanf(“%[^\n]%*c”, str);
需要注意的是,使用gets函數和scanf函數結合%c格式說明符進行字符串輸入時,容易出現緩沖區溢出的問題,可以使用fgets函數或者scanf函數結合%[^\n]格式說明符來避免此問題。