GO

GO언어 기초 : 콘솔 입력 & 출력 함수

SeaPlus 2021. 7. 3. 12:38

콘솔 입력 함수


Scanln 공백으로 구분하여 입력
(숫자 세개를 모두 입력 받고 엔터를 입력)
Scan 공백과 개행으로 구분하여 입력
(숫자를 입력할 때마다 엔터를 입력해서 받을수 있다.)
Scanf 포멧 지정자를 이용하여 개발자가 원하는 형태로 입력

 

 

콘솔 출력 함수 문제 (정돈된 표)


문제:

  • 이름 열은 전부 폭을 8로 지정하고 왼쪽 정렬을 합니다.
  • 전공학과 열은 전부 폭을 14로 지정하고 왼쪽 정렬을 합니다.
  • 학년 열은 전부 폭을 5로 지정하고 오른쪽 정렬을 합니다.
  • 모든 값은 string 형입니다.

 

package main

import "fmt"

func main() {	
	fmt.Printf("%-8s%-14s%+5s\n", "이름", "전공학과", "학년")
	fmt.Printf("%-8s%-14s%+5s\n", "유현수", "전자공학", "3")
	fmt.Printf("%-8s%-14s%+5s\n", "김윤욱", "컴퓨터공학", "4")
	fmt.Printf("%-8s%-14s%+5s\n", "김나영", "미술교육학", "2")
}




//////////////////////////결과 ////////////////////////////////

이름      전공학과             학년
유현수     전자공학              3 
김윤욱     컴퓨터공학             4
김나영     미술교육학             2

 

 

콘솔 입력 함수 문제 (신상정보 입력과 출력)


문제:

  • 주민등록번호 앞자리와 뒷자리를 저장할 int형 변수 RRNf와 RRNt을 선언합니다.
  • 이름을 저장할 string형 변수 name을 선언합니다.
  • 키를 저장할 float32형 변수 height를 선언합니다. 
  • 첫 번째 줄부터 주민등록번호, 이름, 키를 입력받습니다.
  • 정보를 모두 입력하면 결괏값이 출력됩니다.
package main

import "fmt"

func main() {
	var RRNf, RRNt int
	var name string
	var height float32
	
	fmt.Scanf("%d-%d", &RRNf, &RRNt)
	fmt.Scanf("%s", &name)
	fmt.Scanf("%f", &height)
	
	fmt.Printf("주민등록번호 앞자리는 %d, 뒷자리는 %d, 이름은 %s입니다.\n",RRNf, RRNt, name)
	fmt.Printf("그리고 키는 %.2f입니다.", height)
}



///////////////////////////////////결과 /////////////////////////////////////


// 입력
9696969-3939393 김길동 180 

// 출력
주민등록번호 앞자리는 9696969, 뒷자리는 3939393, 이름은 김길동입니다.
그리고 키는 180.00입니다.