C# 연습문제 : 데이터 (뇌를 자극하는 C# 5.0)
2022. 9. 7. 22:58ㆍ문제/C# 연습문제
1. 다음 코드에서 잘못된 부분을 찾고 , 그 이유를 설명하세요.
int a = 7.3;
float b = 3.14;
double c = a * b;
char d = "abc";
string e = '한';
int는 정수형 자료형이어서 소수점은 사용할 수 없다.
float에서 값을 쓰고 뒤에 f를 붙여야 float형이라고 인식한다 붙이지않으면 double이다.
char는 단일 문자를 저장하는 자료형이어서 ''를통해서만 값을 할당 할 수 있다.
string은 문자열을 저장하는 자료형이어서 ""를 통해 값을 할당 할 수 있다.
2. 값 형식과 참조 형식의 차이는 무엇인가요?
값 형식은 변수가 값을 담는 데이터 형식을 말한다. 스택에 값이 저장되기 때문에 코드 블럭을 벗어나면 메모리에서 제거된다.
참조 형식은 변수가 값 대신 값을 가지고 있는 위치를 담는 데이터 형식이다. 힙에 데이터가 저장되고, 스택에 데이터가 저장된 메모리 주소를 저장한다. 힙에서는 가비지 콜렉터가 힙에 저장된 데이터 중 이것을 사용하는 객체가 없다면 자동으로 수거한다.
3. 박싱과 언박싱을 설명하세요
박싱이란 값 형식으로 되어 있는 데이터를 참조 형식의 데이터에 저장시켜놓는 행위를 말한다. ( 코드블럭이 사라지더라도값이 없어지지 않도록)
언박싱이란 박싱이 되어 있는 값을 꺼내 값 형식 변수에 저장하는 행위를 말한다.
4. 사각형의 너비와 높이를 입력받아 넓이를 계산하는 프로그램을 완성하시오
using System;
namespace BookTestC
{
public class Program
{
private static void Main(string[] args)
{
Console.WriteLine("사각형의 너비를 입력해주세요.");
string widthText = Console.ReadLine();
Console.WriteLine("사각형의 높이를 입력해주세요.");
string heightText = Console.ReadLine();
int width = int.Parse(widthText);
int height = int.Parse(heightText);
int result = width * height;
Console.WriteLine("사각형의 넓이는 :{0}입니다", result);
}
}
}
5. 다음 코드를 컴파일한 후 a와 b는 각각 어떤 데이터 형식이겠습니까?
var a = 2020;
var b = "double"
a는 int , b는 string입니다.
'문제 > C# 연습문제' 카테고리의 다른 글
C# 연습문제 : 프로퍼티 (뇌를 자극하는 C# 5.0) (0) | 2022.09.17 |
---|---|
C# 연습문제 : 인터페이스 (뇌를 자극하는 C# 5.0) (0) | 2022.09.17 |
C# 연습문제 : 클래스 (뇌를 자극하는 C# 5.0) (0) | 2022.09.15 |
C# 연습문제 : 메서드 (뇌를 자극하는 C# 5.0) (0) | 2022.09.14 |
C# 연습문제 : 코드의 흐름 제어 (뇌를 자극하는 C# 5.0) (0) | 2022.09.13 |