РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
637 of 1593 menu

Функция fmt.Scanf

Функция fmt.Scanf считывает данные из стандартного ввода (обычно это клавиатура) и сохраняет их в переданные переменные согласно указанному формату. Первым параметром функция принимает строку формата, которая описывает ожидаемый формат ввода, а последующими параметрами - указатели на переменные, в которые будут сохранены прочитанные значения. Функция возвращает количество успешно прочитанных значений и ошибку, если она возникла.

Синтаксис

n, err := fmt.Scanf(format, &var1, &var2, ...)

Пример

Давайте прочитаем целое число и строку из стандартного ввода:

package main import "fmt" func main() { var age int var name string fmt.Print("Enter age and name: ") n, err := fmt.Scanf("%d %s", &age, &name) if err != nil { fmt.Println("Error:", err) return } fmt.Printf("Read %d values: age=%d, name=%s\n", n, age, name) }

Результат выполнения кода при вводе 25 Alice:

"Read 2 values: age=25, name=Alice"

Пример

Давайте прочитаем два целых числа и вычислим их сумму:

package main import "fmt" func main() { var a, b int fmt.Print("Enter two numbers: ") _, err := fmt.Scanf("%d %d", &a, &b) if err != nil { fmt.Println("Error:", err) return } sum := a + b fmt.Printf("Sum: %d\n", sum) }

Результат выполнения кода при вводе 10 20:

"Sum: 30"

Пример

Давайте прочитаем число с плавающей точкой и логическое значение:

package main import "fmt" func main() { var pi float64 var flag bool fmt.Print("Enter pi and flag: ") _, err := fmt.Scanf("%f %t", &pi, &flag) if err != nil { fmt.Println("Error:", err) return } fmt.Printf("Pi: %.2f, Flag: %t\n", pi, flag) }

Результат выполнения кода при вводе 3.14159 true:

"Pi: 3.14, Flag: true"

Смотрите также

  • функцию fmt.Scan,
    которая читает данные без форматной строки
  • функцию fmt.Scanln,
    которая читает данные до символа новой строки
  • функцию fmt.Printf,
    которая форматирует вывод в стандартный поток
  • функцию fmt.Sprintf,
    которая форматирует строку без вывода на экран
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить