티스토리 뷰
#1 문자열 출력하기
문자열 str이 주어질 때, str을 출력하는 코드를 작성해 보세요.
입력 #1 HelloWorld!
출력 #1 HelloWorld!
제한사항
- 1 ≤ str의 길이 ≤ 1,000,000
- str에는 공백이 없으며, 첫째 줄에 한 줄로만
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String a = sc.next();
System.out.println(a);
}
}
#2 a와 b 출력하기
정수 a와 b가 주어집니다. 각 수를 입력받아 입출력 예와 같은 형식으로 출력하는 코드를 작성해 보세요.
입력 #1 4 5
출력 #1 a = 4 b = 5
제한사항
- -100,000 ≤ a, b ≤ 100,000
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println("a = "+a);
System.out.println("b = "+b);
}
}
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println("a = "+a +"\n" +"b = "+b);
}
}
* \n과 같이 줄바꿈 문자를 넣어 출력도 가능하다.
#3 문자열 반복해서 출력하기
문자열 str과 정수 n이 주어집니다.str이 n번 반복된 문자열을 만들어 출력하는 코드를 작성해 보세요.
입력 #1 string 5
출력 #1 stringstringstringstringstring
제한사항
- 1 ≤ str의 길이 ≤ 10
- 1 ≤ n ≤ 5
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
int n = sc.nextInt();
for(int i=0; i<n; i++){
System.out.print(str);
}
}
}
* System.out.println은 한번 실행될때마다 줄바꿈을 해주기 때문에 System.out.print를 사용해야한다.
#4 대소문자 바꿔서 출력하기
영어 알파벳으로 이루어진 문자열 str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.
입력 #1
aBcDeFg
출력 #1
AbCdEfG
제한사항
- 1 ≤ str의 길이 ≤ 20
- str은 알파벳으로 이루어진 문자열입니다.
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String a = sc.next();
int n = a.length(); //a문자열의 길이
char word;
for(int i=0; i<n; i++){
word = a.charAt(i);
if(Character.isUpperCase(word)==true){
System.out.print(Character.toLowerCase(word));
}
else{
System.out.print(Character.toUpperCase(word));
}
}
}
}
#5 특수문자 출력하기
다음과 같이 출력하도록 코드를 작성해 주세요.
출력 예시
!@#$%^&*(\'"<>?:;
오답1
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
for(int i=33; i<59; i++){
System.out.print((char)i);
}
}
}
처음에는 아스키코드를 이용해서 출력하고자 했다.
하지만 요구하는 출력값의 순서와 아스키코드의 순서가 일치하지 않기때문에 올바른 방법이 아니었다.
실행한 결괏값 !"#$%&'()*+,-./0123456789:이 기댓값 !@#$%^&*(\'"<>?:;과 다르다.
오답2
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
System.out.println("!@#$%^&*(\'"<>?:;");
}
}
코드 내에서 작은 따옴표(')와 큰 따옴표(")가 혼동되어 있기 때문에 실행시 오류가 발생했다.
Java에서 문자열 안에 따옴표를 포함하려면 이스케이프 문자 \를 사용하여 따옴표를 이스케이프 해야한다.
또한, 슬래시 문자(/)도 이스케이프 해야 한다.
정답
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
System.out.println("!@#$%^&*(\\'\"<>?:;");
}
}
* 이스케이프 문자 사용방법
이스케이프 문자는 위에서 요구한 문자열과 같이 ',",\ 등과 같이 하나의 문자열 안에서 따옴표들이 혼용되거나 특정 문자를 문자열 안에서 표현하기 위해 사용된다.
이스케이프 문자를 사용하는 이유는 특정 문자를 문자열에 포함시키기 위해서이다. 예를 들어, 큰 따옴표(")를 문자열 안에 포함시키기 위해서는 \"와 같이 이스케이프하여 사용해야 한다. 이렇게 하면 Java 컴파일러는 이스케이프 문자를 해석하고 문자열에 포함된 문자로 처리한다.
Java에서 이스케이프 문자는 역슬래시(\)로 시작한다. 아래는 자주 사용되는 몇 가지 이스케이프 문자이다.
문자 | 의미 |
\" | 큰 따옴표를 표현 |
\' | 작은 따옴표를 표현 |
\\ | 역슬래시를 표현 |
\n | 새 줄 (개행)을 표현 |
\t | 탭을 표현 |
\r | 캐리지 리턴을 표현 |
\b | 백스페이스를 표현 |
\f | 폼 피드를 표현 |
'코딩 > 프로그래머스' 카테고리의 다른 글
코딩 기초 트레이닝 #16 ~ 20 (0) | 2024.04.24 |
---|---|
코딩 기초 트레이닝 #10 ~ 15 (0) | 2024.04.23 |
코딩 기초 트레이닝 #6~9 (0) | 2024.04.22 |
[SQL] SELECT 1~5 (0) | 2024.04.03 |
[PCCE 기출문제] Lv.0 1번~8번 (0) | 2024.04.03 |
- Total
- Today
- Yesterday