프로그래밍 언어 활용 - 1
데이터 입출력
- 개요
키보드로부터 데이터를 입력받아 화면이나 파일로 출력하는 것
- C 문제
6과 4를 입력받아 두 수의 덧셈 결과를 출력하는 프로그램의 결과
#include <stdio.h>
main()
{
int i, j, k;
scanf("%d %d", &i, &j);
k = i + j;
printf("%d\n", k);
}
- 해설 및 답
- scanf()를 통해 i = 4, j = 6를 입력받음
- k = i + j이므로, 4 + 6 = 10으로 k = 10
- printf()로 k를 출력하면 10이 출력
- 따라서 출력 결과는 10
- Java 문제
4를 입력받은 정수를 가지고 여러 연산을 수행한 후 출력하느 프로그램의 출력 결과
import java.util.Scanner;
public class Test
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
int a = scan.nextInt();
System.out.printf("a * 3 = %d\n", a * 3);
System.out.println("a / 2 = " + (a / 2));
System.out.print("a - 1 = " + (a - 1));
scan.close();
}
}
- 해설 및 답
- Scanner 클래스를 이용해 키보드로 입력 값을 받는다.
- 객체 변수 scan을 생성하여 입력 값을 받음
- 정수형 변수 a를 선언하고 입력받은 정수 값인 4를 저장
- printf(), println(), print()의 연산 방법으로 출력
- 따라서 결과는 아래와 같다.
a * 3 = 12
a / 2 = 2
a - 1 = 3
- 헝가리안 표기법(Hungarian Notation)
변수명 작성 시 변수의 자료형을 알 수 있도록 자료형을 의미하는 문자를 포함하여 작성하는 방법
-
예시
int i_InputA : 정수형 변수
double d_Result : 배정도 실수형 변수
-
주요 자료형
종류 자료형 크기(C) 크기(Java) 정수형 int 4Byte 4Byte 문자형 char 1Byte 2Byte 실수형 float 4Byte 4Byte double 8Byte 8Byte
-
주요 서식 문자열
서식 문자열 의미 %d 정수형 10진수의 입출력에 사용 %o 정수형 8진수의 입출력에 사용 %x 정수형 16진수의 입출력에 사용 %c 문자의 입출력에 사용 %s 문자열의 입출력에 사용 %f 소수점을 포함한 실수의 입출력에 사용 출력시 소수점 이하는 기본적으로 6자리 출력
-
주요 제어문자
제어문자 기능 \n 커서를 다음 줄의 처음으로 이동(new line) \t 커서를 일정 간격 띄움(tab) \O 널 문자 출력
-
연산자 우선순위(높음 - 낮음)
단항 - 산술 - 시프트 - 관계 - 비트 - 논리 - 조건 - 대입 - 순서
제어문
- 개요
서술된 순서에 따라 무조건 위에서 아래로 실행되는 프로그램의 순서를 변경할 때 사용
- C 문제
#include<stdio.h>
main()
{
int score[] = {86, 53, 95, 76, 61};
char grade;
char str[] = "Rank";
for(int i = 0; i < 5; i++)
{
switch(score[i] / 10)
{
case 10:
case 9:
grade = 'A';
break;
case 8:
grade = 'B';
break;
case 7:
grade = 'C';
break;
default: grade = 'F';
}
if(grade != 'F')
printf("%d is %c %s\n", i + 1, grade, str);
}
}
- 해설 및 답
반복문 실행 결과
i score[i] score[i]/0 grade grade!='F' 출력 0 86 8 B True 1 is B Rank 1 53 5 F False 2 95 9 A True 3 is A Rank 3 76 7 C False 4 is C Rank 4 61 6 F True 5
따라서 결과는
1 is B Rank
3 is A Rank
4 is C Rank
- Java 문제
public class Test
{
public static void main(String[] args)
{
String str = "agile";
int x[] = {1, 2, 3, 4, 5}
char y[] = new char[5];
int i = 0;
while (i < str.length())
{
y[i] = str.charAt(i);
i++;
}
for (int p : x)
{
i--;
System.out.print(y[i]);
System.out.print(p + " ");
}
}
}
- 해설 및 답
while 문 반복 결과
i str str.length() str.charAt(i) y[] 0 agile 5 a a 1 g ag 2 i agi 3 l agil 4 e agile 5
for 문 반복 결과
p i y[i] 출력 1 4 e e1 2 3 l e1 l2 3 2 i e1 l2 i3 4 1 g e1 l2 i3 g4 5 0 a e1 l2 i3 g4 a5
따라서 결과는 다음과 같다.
e1
e1 l2
e1 l2 i3
Author And Source
이 문제에 관하여(프로그래밍 언어 활용 - 1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@swkiim/programming-lang-1
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
키보드로부터 데이터를 입력받아 화면이나 파일로 출력하는 것6과 4를 입력받아 두 수의 덧셈 결과를 출력하는 프로그램의 결과
#include <stdio.h>
main()
{
int i, j, k;
scanf("%d %d", &i, &j);
k = i + j;
printf("%d\n", k);
}- 해설 및 답
- scanf()를 통해 i = 4, j = 6를 입력받음
- k = i + j이므로, 4 + 6 = 10으로 k = 10
- printf()로 k를 출력하면 10이 출력
- 따라서 출력 결과는 10
4를 입력받은 정수를 가지고 여러 연산을 수행한 후 출력하느 프로그램의 출력 결과
import java.util.Scanner;
public class Test
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
int a = scan.nextInt();
System.out.printf("a * 3 = %d\n", a * 3);
System.out.println("a / 2 = " + (a / 2));
System.out.print("a - 1 = " + (a - 1));
scan.close();
}
}- 해설 및 답
- Scanner 클래스를 이용해 키보드로 입력 값을 받는다.
- 객체 변수 scan을 생성하여 입력 값을 받음
- 정수형 변수 a를 선언하고 입력받은 정수 값인 4를 저장
- printf(), println(), print()의 연산 방법으로 출력
- 따라서 결과는 아래와 같다.
a * 3 = 12
a / 2 = 2
a - 1 = 3
변수명 작성 시 변수의 자료형을 알 수 있도록 자료형을 의미하는 문자를 포함하여 작성하는 방법-
예시
int i_InputA : 정수형 변수
double d_Result : 배정도 실수형 변수 -
주요 자료형
종류 자료형 크기(C) 크기(Java) 정수형 int 4Byte 4Byte 문자형 char 1Byte 2Byte 실수형 float 4Byte 4Byte double 8Byte 8Byte -
주요 서식 문자열
서식 문자열 의미 %d 정수형 10진수의 입출력에 사용 %o 정수형 8진수의 입출력에 사용 %x 정수형 16진수의 입출력에 사용 %c 문자의 입출력에 사용 %s 문자열의 입출력에 사용 %f 소수점을 포함한 실수의 입출력에 사용 출력시 소수점 이하는 기본적으로 6자리 출력 -
주요 제어문자
제어문자 기능 \n 커서를 다음 줄의 처음으로 이동(new line) \t 커서를 일정 간격 띄움(tab) \O 널 문자 출력 -
연산자 우선순위(높음 - 낮음)
단항 - 산술 - 시프트 - 관계 - 비트 - 논리 - 조건 - 대입 - 순서
- 개요
서술된 순서에 따라 무조건 위에서 아래로 실행되는 프로그램의 순서를 변경할 때 사용 - C 문제
#include<stdio.h>
main()
{
int score[] = {86, 53, 95, 76, 61};
char grade;
char str[] = "Rank";
for(int i = 0; i < 5; i++)
{
switch(score[i] / 10)
{
case 10:
case 9:
grade = 'A';
break;
case 8:
grade = 'B';
break;
case 7:
grade = 'C';
break;
default: grade = 'F';
}
if(grade != 'F')
printf("%d is %c %s\n", i + 1, grade, str);
}
}
- 해설 및 답
반복문 실행 결과
i score[i] score[i]/0 grade grade!='F' 출력 0 86 8 B True 1 is B Rank 1 53 5 F False 2 95 9 A True 3 is A Rank 3 76 7 C False 4 is C Rank 4 61 6 F True 5 따라서 결과는
1 is B Rank
3 is A Rank
4 is C Rank
- Java 문제
public class Test
{
public static void main(String[] args)
{
String str = "agile";
int x[] = {1, 2, 3, 4, 5}
char y[] = new char[5];
int i = 0;
while (i < str.length())
{
y[i] = str.charAt(i);
i++;
}
for (int p : x)
{
i--;
System.out.print(y[i]);
System.out.print(p + " ");
}
}
}
- 해설 및 답
while 문 반복 결과
i str str.length() str.charAt(i) y[] 0 agile 5 a a 1 g ag 2 i agi 3 l agil 4 e agile 5 for 문 반복 결과
p i y[i] 출력 1 4 e e1 2 3 l e1 l2 3 2 i e1 l2 i3 4 1 g e1 l2 i3 g4 5 0 a e1 l2 i3 g4 a5 따라서 결과는 다음과 같다.
e1
e1 l2
e1 l2 i3
Author And Source
이 문제에 관하여(프로그래밍 언어 활용 - 1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@swkiim/programming-lang-1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)