inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Lập trình C bắt đầu một cách quyết liệt

[Bài tập thực hành bắt buộc] Tìm giá trị lớn nhất - Kiểu sinh tồn

최댓값 구하기(서바이벌)에서 수식 구성에 대한 질문

Đã giải quyết

39

ekfqlc76051

1 câu hỏi đã được viết

0

안녕하세요

수식에 대해서 질문이 있습니다.

저는 아래처럼 구성했는데요

3항연산자에 scanf_s를 집어 넣는 형식으로 만들었습니다.

이런 구성으로 연습을 하면 좋지 않은 습관일까요?


int input = 0;

int Max = 0;

scanf_s("%d", &input);

printf("최댓값은 %d입니다.\n", input);

(input > Max) ? scanf_s("%d", &Max) : scanf_s("%d", &Max);

printf("최댓값은 %d입니다.\n", Max);

(input > Max) ? scanf_s("%d", &Max) : scanf_s("%d", &Max);

printf("최댓값은 %d입니다.\n", Max);

c 컴퓨터-구조 assembly-language vc++

Câu trả lời 2

1

nullnull8537

3항 연산자의 피연산자는 말 그대로 '항'이어야 합니다. 함수를 호출하는 연산을 넣는 것은 바람직하지 않겠습니다. 즉 scanf_s() 함수의 형식문열 이후 매개변수에 3항 연산자가 오도록 구성하는 것이 적절하겠습니다. :)

1

eggmun

안녕하세요!

연습 목적으로 다양한 문법을 사용해 보는 것은 좋은 방법이라고 생각합니다.

다만 삼항 연산자는 보통 조건에 따라 값을 선택하거나 대입할 때 사용하는 경우가 많습니다. scanf_s()처럼 입력을 받거나 부수 효과가 있는 함수를 실행하는 용도로 자주 사용하지는 않습니다.

따라서 문법을 익히기 위한 연습은 괜찮지만, 실제 코드에서는 가독성을 위해 if문을 사용하는 경우가 더 많습니다. 삼항 연산자는 값을 선택하는 상황에서 사용하는 습관을 들이면 이후에도 도움이 될 것입니다.

scanf_s 에 관해서 오류나옵니다.

0

104

3

자문자답- 맞는지 틀린지 확인부탁드립니다.

0

60

1

메모리 동적할당시 메모리창 빨간 글씨

0

67

2

리눅스로 진행해도 될까요?

0

64

2

sizeof는 컴파일 타임 연산자라서 CPU를 사용치 않는다

0

64

2

scanf("%d\n") 의미

0

71

2

주소 연산자(&) 간접 지정자(*) 반대 개념

0

84

2

Virtual Memory, Memory, Memory mapping tables

0

106

2

샘플코드 출력 오류 발생 질문드립니다

0

107

2

값의 교환에 사용되는 변수의 위치.

0

128

2

메모리 비교에 관한 질문

0

117

2

문자열 Null

0

83

1

C, C++

0

114

2

문자열 입출력 코드 에러

0

88

2

선생님! 120화 2분 50초 질문입니다.

0

88

1

caller 가 메모리 할당 해제를 할 때의 문제점 질문

0

90

2

단축키 맞는지 여부 문의드립니다.

0

93

2

문자열을 사용하는 이중 포인터에 대하여 질문합니다

0

83

1

char 포인터 변수의 크기에 대하여 제가 이해한 것이 맞을까요

0

104

2

용어 설명 필요

0

88

2

stdin, stdout

0

88

2

필수 실습 (최댓값을 반환하는 함수)

0

113

2

아......ㅠㅠ

0

128

2

버퍼 내 엔터

0

99

1