배열은 같은 데이터 타입의 여러 변수를 필요로 할 때 사용한다.
배열은 아래와 같이 선언하여 사용한다.
데이터타입[] 배열명 = new 데이터타입[배열크기];
문제) 5개 정수를 입력받은 후 차례로 출력하는 프로그램
입력예) 5 10 9 3 2
출력예) 5 10 9 3 2
package sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
int[] arr = new int[5];
int i;
for( i=0; i<5; i++)
{
arr[i] = scn.nextInt();
System.out.print(arr[i] +" ");
}
}
}
문제) 문자 10개를 저장할 수 있는 배열을 선언하고 10개의 문자를 입력받아 입력받은 문자를 이어서 출력하는 프로그램
입력예) A B C D E F G H I J
출력예) ABCDEFGHIJ
package sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
char[] arr = new char[10];
int i;
for( i=0; i<10; i++)
{
arr[i] = scn.next().charAt(0);
System.out.print(arr[i]);
}
}
}
문제) 정수 10개를 입력받은 후 세번째, 다섯번쨰와 마지막으로 입력받은 정수를 차례로 출력하는 프로그램
입력예) 5 3 9 6 8 4 2 8 10 1
출력예) 9 8 1
package sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
int[] arr = new int[10];
int i;
for( i=0; i<10; i++)
{
arr[i] = scn.nextInt();
}
System.out.print(arr[2]+" "+arr[4]+" "+arr[arr.length-1]);
}
}
문제) 최대 100개까지의 정수를 차례로 입력받다가 0이 입력되면 입력을 중단하고 짝수 번째에 입력된 정수를 모두 출력하는 프로그램 작성
입력예) 11 25 3 9 15 6 8 7 12 0
출력예) 25 9 6 7
package sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
int[] arr = new int[100];
int i, cnt = 0;
for( i=0; i<arr.length; i++)
{
arr[i] = scn.nextInt();
if( arr[i] == 0)
{
break;
}
cnt++;
}
for( i=1; i<cnt; i+=2)
{
System.out.print(arr[i]+" ");
}
}
}
문제) 100개의 정수를 저장할 수 있는 배열을 선언하고 정수를 차례로 입력받다가 0이 입력되면 0을 제외하고 그때까지 입력된 정수를 가장 나중에 입력된 정수부터 차례대로 출력하는 프로그램 작성
입력예) 3 5 10 55 0
출력예) 55 10 5 3
package sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
int[] arr = new int[100];
int i, cnt = 0;
for( i=0; i<arr.length; i++)
{
arr[i] = scn.nextInt();
if( arr[i] == 0)
{
break;
}
cnt++;
}
for( i=cnt-1; i>=0; i--)
{
System.out.print(arr[i]+" ");
}
}
}
문제) 연도와 월을 입력받아 해당 월의 날수를 출력하다가 월이 0이면 종료하는 프로그램 (while이용)
(월이 잘못 입력되면 "잘못 입력하였습니다."를 출력)
입출력예)
package sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
int[] day = new int[13];
int i, year;
for( i=1; i<day.length; i++)
{
if( i==2)
{
day[i] = 28;
}
else if( i==4 || i==6 || i==9 || i==11)
{
day[i] = 30;
}
else
{
day[i] = 31;
}
}
while(true)
{
System.out.print("년도 : ");
year = scn.nextInt();
System.out.print("월 : ");
i = scn.nextInt();
if(i == 0)
{
break;
}
if(i<1 || i>12)
{
System.out.print("잘못 입력하였습니다.\n\n");
continue;
}
else if( i==2)
{
if(year%400==0||((year%4==0)&&(year%100!=0)))
{
day[2] = 29;
}
else
{
day[2] = 28;
}
}
System.out.printf("입력하신 달의 날수는 %d일입니다.\n\n", day[i]);
}
}
}
문제) 10개의 정수를 입력받아 그 중 가장 큰 수를 출력하는 프로그램
입력예) 5 10 8 55 6 31 12 24 61 2
출력예) 61
package sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
int[] arr = new int[10];
int i, max;
for( i=0; i<arr.length; i++)
{
arr[i] = scn.nextInt();
}
max = arr[0];
for( i=1; i<arr.length; i++)
{
if(max<arr[i])
{
max = arr[i];
}
}
System.out.print(max);
}
}
'자바 JAVA' 카테고리의 다른 글
배열복사 문제풀이 - 자바 기초 (0) | 2021.05.24 |
---|---|
배열을 이용한 예제풀이 2 - 자바 기초 (0) | 2021.05.23 |
while문 이용 예제풀이 - 자바 기초 (0) | 2021.05.22 |
다중 for문 이용 예제 풀이 - 자바 기초 (0) | 2021.05.19 |
for문 예제 풀이 - 자바 기초 (0) | 2021.05.15 |