검수요청.png검수요청.png

"실행문"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(새 문서: '''실행문'''은 프로그래밍 언어에 있어서 대입 조작, 점프, 반복, 순서 호출 등과 같이 실제 동작을 지시하는 문. 포트란(FORTRAN) 용어에서...)
 
(같이보기)
 
(사용자 2명의 중간 판 8개는 보이지 않습니다)
1번째 줄: 1번째 줄:
'''실행문'''은 프로그래밍 언어에 있어서 대입 조작, 점프, 반복, 순서 호출 등과 같이 실제 동작을 지시하는 . 포트란(FORTRAN) 용어에서 실행문이라고 하면 실행시의 동작을 지정하는 용어다.
+
'''실행문'''(execute statement, executable statement)[[프로그래밍 언어]]에 있어서 대입 조작, 점프, 반복, 순서 호출 등과 같이 실제 동작을 지시하는 문장이다. [[포트란]](Fortran) 용어에서 실행문이라고 하면 실행시의 동작을 지정하는 용어이다.<ref> 〈[https://terms.naver.com/entry.naver?docId=1614372&cid=50372&categoryId=50372 실행문]〉, 《네이버 지식백과》 </ref>
  
 
==종류==
 
==종류==
[[대입문]], [[제어문]], [[입출력문]]이 대표 실행문이다.
+
===대입문===
 +
대입 연산자(=)를 자료와 함께 작성한 것을 [[대입문]]이라고 한다.
  
===대입문===
+
;C언어 기본식
대입 연산자(=)를 자료와 함께 작성한 것을 대입문이라고한다.
 
*C언어 예시 기본식
 
 
  int num01 = 7;
 
  int num01 = 7;
 
  int num02 = 7;
 
  int num02 = 7;
13번째 줄: 12번째 줄:
 
  num02 -= 5;
 
  num02 -= 5;
 
  num03 =- 5;   
 
  num03 =- 5;   
  printf("- 연산자에 의한 결괏값은 %d이다.\n", num01);
+
  printf("- 연산자에 의한 결과값은 %d이다.\n", num01);
  printf("-= 연산자에 의한 결괏값은 %d이다.\n", num02);
+
  printf("-= 연산자에 의한 결과값은 %d이다.\n", num02);
  printf("=- 연산자에 의한 결괏값은 %d이다.\n", num03);   
+
  printf("=- 연산자에 의한 결과값은 %d이다.\n", num03);   
  실행 결과 : -  연산자에 의한 결괏값은 2이다.
+
  실행 결과 : -  연산자에 의한 결과값은 2이다.
  -= 연산자에 의한 결괏값은 2이다.
+
  -= 연산자에 의한 결과값은 2이다.
  =- 연산자에 의한 결괏값은 -5이다.
+
  =- 연산자에 의한 결과값은 -5이다.<ref> 〈[http://tcpschool.com/c/c_operator_assignment 대입 연산자]〉, 《티시피스쿨》 </ref>
*문자 대입
+
 
 +
;자바 기본식
 +
public class Ex02_02_복합대입 {
 +
    public static void main(String[] args){
 +
       
 +
        int a, b, c;
 +
        a=3; // = 대입 연산자
 +
        a += 5;//a=a+5; += 복합 대입 연산자
 +
       
 +
        System.out.println("a="+a);
 +
       
 +
        b=20;
 +
        b -= 3;; //b=b-3;
 +
        System.out.println("b="+b);
 +
       
 +
        char ch2 = 'b';
 +
        ch2+=3;
 +
        //ch2=ch2+3; //에러 98+3
 +
        //ch2 = (char)ch2+3; //에러
 +
        ch2 = (char)(ch2+3);
 +
       
 +
        System.out.println("ch2="+ch2);
 +
        System.out.println("ch2="+(char)ch2);
 +
       
 +
        String fruit = "apple";
 +
        fruit += "bananan";
 +
        System.out.println("fruit=" + fruit);
 +
   
 +
    }
 +
 
 +
}
 +
실행결과 : a=8
 +
b=17
 +
ch2=h
 +
ch2=h
 +
fruit=applebananan<ref> 즐거운깐족이, 〈[https://spahrose.tistory.com/9 (Java) 예제 연산자 복합대입]〉, 《티스토리》, 2016-04-23 </ref>
 +
 
 +
====문자열====
 +
대입문은 문자열을 대입할 수도 있다.
 +
 
 +
;C언어 예제
 +
#define _CRT_SECURE_NO_WARNINGS    // strcpy 보안 경고로 인한 컴파일 에러 방지
 +
#include <stdio.h>
 +
#include <string.h>    // strcpy 함수가 선언된 헤더 파일
 +
 +
int main()
 +
{
 +
    char s1[10] = "Hello";    // 크기가 10인 char형 배열을 선언하고 문자열 할당
 +
    char s2[10];              // 크기가 10인 char형 배열을 선언
 +
 +
    strcpy(s2, s1);        // s1의 문자열을 s2로 복사
 +
   
 +
    printf("%s\n", s2);    // Hello
 +
 +
    return 0;
 +
}
 +
실행 결과 : Hello<ref> 〈[https://dojang.io/mod/page/view.php?id=358 문자열을 복사하고 붙이기]〉, 《코딩도장》 </ref>
 +
 
 +
; 자바 예제
 +
String str = new String("Java");
 +
 +
System.out.println("원본 문자열 : " + str);
 +
 +
 
 +
 +
for (int i = 0; i < str.length(); i++) {
 +
 +
    System.out.print(str.charAt(i) + " ");
 +
 +
}
 +
 +
System.out.println("\ncharAt() 메소드 호출 후 원본 문자열 : " + str);
 +
실행 결과 : 원본 문자열 : Java
 +
 +
J a v a
 +
 +
charAt() 메소드 호출 후 원본 문자열 : Java<ref> 〈[http://tcpschool.com/java/java_api_string java.lang.String 클래스]〉, 《티시피스쿨》 </ref>
 +
 
 +
====배열====
 +
;C언어 예제
 +
#include <stdio.h>
 +
 +
int main()
 +
{
 +
    int numArr[10];    // 크기가 10인 배열 선언
 +
   
 +
    numArr[0] = 11;    // 인덱스가 0인 배열의 요소에 값 할당
 +
    numArr[1] = 22;    // 인덱스가 1인 배열의 요소에 값 할당
 +
    numArr[2] = 33;    // 인덱스가 2인 배열의 요소에 값 할당
 +
    numArr[3] = 44;    // 인덱스가 3인 배열의 요소에 값 할당
 +
    numArr[4] = 55;    // 인덱스가 4인 배열의 요소에 값 할당
 +
    numArr[5] = 66;    // 인덱스가 5인 배열의 요소에 값 할당
 +
    numArr[6] = 77;    // 인덱스가 6인 배열의 요소에 값 할당
 +
    numArr[7] = 88;    // 인덱스가 7인 배열의 요소에 값 할당
 +
    numArr[8] = 99;    // 인덱스가 8인 배열의 요소에 값 할당
 +
    numArr[9] = 110;    // 인덱스가 9인 배열의 요소에 값 할당
 +
 +
    printf("%d\n", numArr[0]);    // 11: 배열의 첫 번째(인덱스 0) 요소 출력
 +
    printf("%d\n", numArr[5]);    // 66: 배열의 여섯 번째(인덱스 5) 요소 출력
 +
    printf("%d\n", numArr[9]);    // 110: 배열의 열 번째(인덱스 9) 요소 출력
 +
 +
    return 0;
 +
}
 +
실행 결과 : 11
 +
66
 +
110<ref> 〈[https://dojang.io/mod/page/view.php?id=295 배열의 요소에 값 할당하기]〉, 《코딩도장》 </ref>
 +
 
 +
;자바 예제
 +
public class ArrayVariableTest {
 +
 
 +
    public static void main(String[] args) {
 +
        // TODO Auto-generated method stub
 +
        int[] test = {1, 2, 3};
 +
        int[] test2;
 +
       
 +
        test2 = test;
 +
       
 +
        System.out.println("test : " + test[0] + ", " + test[1] + ", " + test[2]);
 +
        System.out.println("test2 : " + test2[0] + ", " + test2[1] + ", " + test2[2]);
 +
       
 +
        test[1] = 4;
 +
       
 +
        System.out.println("test : " + test[0] + ", " + test[1] + ", " + test[2]);
 +
        System.out.println("test2 : " + test2[0] + ", " + test2[1] + ", " + test2[2]);
 +
       
 +
        test[2] = 5;
 +
       
 +
        System.out.println("test : " + test[0] + ", " + test[1] + ", " + test[2]);
 +
        System.out.println("test2 : " + test2[0] + ", " + test2[1] + ", " + test2[2]);
 +
       
 +
    }
 +
}
 +
실행결과
 +
test : 1, 2, 3
 +
test2 : 1, 2, 3
 +
test : 1, 4, 3
 +
test2 : 1, 4, 3
 +
test : 1, 4, 5
 +
test2 : 1, 4, 5<ref> 꽁담, 〈[https://mozi.tistory.com/456 (JAVA) 자바 배열변수 값 대입시 주의점과 다차원 배열]〉, 《티스토리》, 2020-11-03 </ref>
 +
 
 +
===제어문===
 +
[[제어문]](control statement)은 프로그램의 흐름을 지시하는 데 사용되는 문장들로서 특별한 전달을 유발하거나 이미 상술된 상황에 의한 전달을 실행시키는 포트란의 용어로 대표적으로 [[if]] 문, [[goto]] 문, [[return]]문이 있다.<ref> 〈[https://terms.naver.com/entry.naver?docId=819025&cid=42344&categoryId=42344 제어문]〉, 《네이버 지식백과》 </ref>
 +
 
 +
====if문====
 +
[[if]]문은 선택 제어문 중에서 기본이 되는 명령문으로, 다음은 두 프로그래밍의 제어문의 예제이다.
 +
 
 +
;C언어 예제
 +
# include  < stdio.h >
 +
 +
void main ( void )
 +
{
 +
 +
int  a ;
 +
printf ( " 어떤 수를 입력하시오 : " ) ;
 +
scanf ( " %d " , &a ) ;
 +
if ( a % 2 ) printf ( " %d 는 홀수입니다. \n " , a ) ;
 +
if ( ! ( a % 2 ) ) printf ( " %d는 짝수 입니다. \n " , a ) ;
 +
 +
}
 +
 +
실행 결과
 +
어떤 수를 입력하시오 : 5    Enter Button Push
 +
5 는 홀수입니다.<ref name="IF문"> 〈[http://www.angel25.com/ClanguageStudy5.html ( C 언어 스터디 )]〉, 《성안당》 </ref>
 +
 
 +
;자바 예제
 +
public class IfExample1 {
 +
 +
public static void main(String[] args) {
 +
 +
char gender = 'M';
 +
 +
if ( gender == 'F') {// { 중괄호시작 = 블록의 시작, 중괄호사이를 블록이라고 부름// 블록에서는 들여쓰기 해야 함(가독성)
 +
System.out.println("여성입니다.");
 +
}else {
 +
System.out.println("여성이 아닙니다.");
 +
}
 +
// 여성이 아닙니다.
 +
}
 +
 +
}<ref> foeverna, 〈[https://velog.io/@foeverna/Java%EC%A0%9C%EC%96%B4%EB%AC%B8-%EC%A1%B0%EA%B1%B4%EB%AC%B8-if%EB%AC%B8 (Java)제어문 - 조건문- if문]〉, 《벨로그》, 2020-08-24 </ref>
 +
 
 +
====goto문====
 +
[[goto]]문은 지정된 [[레이블]](lable)로 무조건 분기하는 명령문으로 다음은 두 프로그래밍의 제어문의 예제이다.
 +
 
 +
;C언어 예제
 +
# include  < stdio.h >
 +
 +
void main ( void )
 +
{
 +
 +
int  n = 0 ,  sum = 0 ;
 +
 +
begin :
 +
 +
n++ ;
 +
sum += n ;
 +
if ( n == 100 )
 +
 +
printf ( " 1 + 2 + 3 + ............ + 100 = %d \n " , sum ) ;
 +
 +
else
 +
 +
goto  begin ;
 +
 +
}
 +
 +
실행 결과
 +
1 + 2 + 3 + .............. + 100 = 5050<ref name="IF문"></ref>
 +
 
 +
;자바 예제
 +
자바는 goto 대신 [[out]]을 이용한다.
 +
 
 +
public class GotoInJava {
 +
    public static void main(String[] args) {
 +
        int i = 0;
 +
        int j = 0;
 +
 
 +
        outer:
 +
        while(true) {
 +
            i++;
 +
            while(true) {
 +
                j++;
 +
                if(j % 10 == 0) break;
 +
                if(i % 10 == 0) break outer;
 +
                System.out.println(j);   
 +
            }
 +
        } 
 +
        System.out.println("i : " + i);
 +
        System.out.println("j : " + j);
 +
    }   
 +
}<ref> SeYUN, 〈[https://seyun99.tistory.com/entry/goto-in-java goto in java]〉, 《티스토리》, 2018-02-13 </ref>
 +
 
 +
====return문====
 +
[[return]]문은 현재의 함수에서 값이나 주소를 반환할 때 사용한다.<ref> 〈[https://ko.wikipedia.org/wiki/Return_%EB%AC%B8 Return 문]〉, 《위키백과》 </ref>
 +
 
 +
;C언어 예제
 +
#include <stdio.h>
 +
 +
double half(int x)
 +
 +
{
 +
 +
return (x/2.0);
 +
 +
}
 +
 +
int main()
 +
 +
{
 +
 +
int number;
 +
 +
printf("숫자를 입력해주세요\n");
 +
 +
scanf("%d",&number);
 +
 +
printf("\n");
 +
 +
printf("%d의 반절은 %.1f입니다.",number,half(number));
 +
 +
getchar();
 +
 +
return 0;
 +
 +
}
 +
실행결과 : 숫자를 입력해주세요
 +
50
 +
50의 반절은 25.0입니다.<ref> 느긋한 주인장, 〈[https://intunknown.tistory.com/124 c언어 return문]〉, 《티스토리》,  2017-12-16 </ref>
 +
 
 +
;자바 예제
 +
class MethodReturn
 +
{
 +
public static void main(String[] args)
 +
{
 +
int result = adder(4,5);
 +
System.out.println("4와 5의 합 : " + result);
 +
System.out.println("3.5의 제곱 : " + square(3.5));
 +
 +
String result2 = grade(88);
 +
System.out.println("합격여부 : " + result2);
 +
}
 +
 +
public static int adder(int n1, int n2){
 +
int addResult = n1 + n2;
 +
return addResult;
 +
}
 +
 +
public static double square(double num){
 +
return num * num;
 +
}
 +
 +
public static String grade(int score){
 +
if(score >= 80)
 +
{
 +
return "합격";
 +
}
 +
else{
 +
return "불합격";
 +
}
 +
} // if문 안에서 return할 경우에는 반드시 else문으로 종료되어야 함.
 +
}<ref> Jamesy leather, 〈[https://intunknown.tistory.com/124 (Java) 메소드(Method) Return 키워드]〉, 《티스토리》,  22020-06-25 </ref>
 +
 
 +
===입출력문===
 +
[[입출력문]]은 입력과 출력을 담당하는 것으로 C언어에서는 [[printf]], [[scanf]], 자바에서는 [[print]], [[printIn]], [[printf]], [[read]]등이 있다.
 +
 
 +
==== printf ====
 +
[[printf]]와 [[scanf]]는 C언어에서 가장 많이 사용하는 표준 입출력 함수로써 <stdio.h> 헤더파일에 정의되어 있다. 출력 함수는 printf("출력내용 %d, integer); 과 같이 사용할 수 있고, 입력 함수는 scanf("%d %f", &integer, &float);와 같이 사용할 수 있다.
 +
 
 +
#include<stdio.h>
 +
 +
int main() {
 +
 +
  int integer;
 +
  printf("input the value : ");
 +
  scanf("%d \n", &integer);
 +
 +
  return 0;
 +
}
 +
 
 +
결과
 +
input the value : 100
 +
100<ref name="입출력"> La.place, 〈[https://dev-momo.tistory.com/entry/C%EC%96%B8%EC%96%B4-%ED%91%9C%EC%A4%80-%EC%9E%85%EC%B6%9C%EB%A0%A5-%EC%A0%95%EB%A6%AC C언어 표준 입출력 정리]〉, 《티스토리》, 2015-10-30 </ref>
 +
 
 +
==== getchar ====
 +
[[getchar]] 함수는 키보드로부터 한 번에 한 문자씩 읽어들이는 C언어의 함수이다. 아래와 같은 형식으로 사용한다.
 +
 
 +
int i;
 +
 +
i = getchar();
 +
 
 +
단점은 getchar로 숫자를 입력받을 시 두 자리 이상의 숫자를 받을 수 없다. [[putchar]] 함수는 화면에 한 문자씩 출력하는 함수이다. 파라미터의 아스키 코드값에 해당하는 문자를 출력한다.
 +
 
 +
#include<stdio.h>
 +
 +
int main() {
 +
 +
    char a1;
 +
    a1 = getchar();
 +
    putchar(a1);
 +
 +
    return 0;
 +
 +
}<ref name="입출력"></ref>
 +
 
 +
==== gets ====
 +
[[gets]] 함수는 키보드로부터 문자열을 읽어들여 문자열 포인터가 가리키는 장소에 기억시키며, 그 포인터를 되돌려 주는 C언어의 함수이다. 한 줄을 입력받을 때 사용할 수 있으며, space도 공백으로 문자열에 포함시킨다. 단점은 문자열 변수의 길이보다 긴 글자들을 입력할 경우 에러가 발생한다. [[puts]] 함수는 문자열을 화면으로 출력하는 함수이다. '\0'을 만나면 '\n'으로 바꾸어 출력한다.
 +
 
 +
#include<stdio.h>
 +
 +
int main() {
 +
 +
    char str[20];
 +
    gets_s(str);
 +
    puts(str);
 +
 +
    return 0;
 +
}<ref name="입출력"></ref>
 +
 
 +
==== Scanner ====
 +
[[Scanner]]는 값을 입력받을 수 있는 [[자바]]의 [[클래스]]이다. 이를 통해서 [[정수]], [[실수]], [[단어]], 줄단위를 쉽게 읽어올 수 있다.
 +
 
 +
; 호출
 +
Scanner를 사용하기 위해서는 import를 통해 호출한다. java.util 패키지에 포함되어 있으므로 다음과 같이 import한다.
 +
import java.util.Scanner;
 +
 
 +
; 객체 생성
 +
scn라는 객체를 생성하여 System.in으로 입력한 값을 바이트 단위로 읽는 것을 의미한다.
 +
Scanner scn = new Scanner(System.in);
 +
 
 +
; 예제
 +
 
 +
import java.util.Scanner;
 +
 +
public class test {
 +
 +
public static void main(String[] args) {
 +
String name;
 +
int age;
 +
double height;
 +
String intro;
 +
String buffer;
 +
 +
Scanner sc = new Scanner(System.in);
 +
System.out.println("이름을 입력하세요");
 +
name = sc.next();
 +
System.out.println("나이를 입력하세요");
 +
age = sc.nextInt();
 +
System.out.println("키를 입력하세요");
 +
height = sc.nextDouble();
 +
System.out.println("자기소개를 입력하세요");
 +
buffer = sc.nextLine();
 +
intro = sc.nextLine();
 +
 +
System.out.println("이름은 "+name+"나이는 "+age+",키는 "+height+"입니다.");
 +
System.out.println(intro);
 +
}
 +
}<ref> ssung.k, 〈[https://ssungkang.tistory.com/entry/java%EC%82%AC%EC%9A%A9%EC%9E%90%EB%A1%9C-%EB%B6%80%ED%84%B0-%EA%B0%92-%EC%9E%85%EB%A0%A5%EB%B0%9B%EA%B8%B0-Scanner (java)사용자로 부터 값 입력받기, Scanner]〉, 《티스토리》, 2019-03-20 </ref>
 +
 
 +
{{각주}}
 +
 
 +
==참고자료==
 +
* 〈[https://terms.naver.com/entry.naver?docId=1614372&cid=50372&categoryId=50372 실행문]〉, 《네이버 지식백과》
 +
* 〈[http://tcpschool.com/c/c_operator_assignment 대입 연산자]〉, 《티시피스쿨》
 +
* 〈[https://dojang.io/mod/page/view.php?id=358 문자열을 복사하고 붙이기]〉, 《코딩도장》
 +
* 〈[https://dojang.io/mod/page/view.php?id=295 배열의 요소에 값 할당하기]〉, 《코딩도장》
 +
* 〈[http://tcpschool.com/java/java_api_string java.lang.String 클래스]〉, 《티시피스쿨》
 +
* 꽁담, 〈[https://mozi.tistory.com/456 (JAVA) 자바 배열변수 값 대입시 주의점과 다차원 배열]〉, 《티스토리》, 2020-11-03
 +
* 즐거운깐족이, 〈[https://spahrose.tistory.com/9 (Java) 예제 연산자 복합대입]〉, 《티스토리》, 2016-04-23
 +
* 〈[https://terms.naver.com/entry.naver?docId=819025&cid=42344&categoryId=42344 제어문]〉, 《네이버 지식백과》
 +
* SeYUN, 〈[https://seyun99.tistory.com/entry/goto-in-java goto in java]〉, 《티스토리》, 2018-02-13
 +
* 〈[https://ko.wikipedia.org/wiki/Return_%EB%AC%B8 Return 문]〉, 《위키백과》
 +
* Jamesy leather, 〈[https://intunknown.tistory.com/124 (Java) 메소드(Method) Return 키워드]〉, 《티스토리》,  22020-06-25
 +
* La.place, 〈[https://dev-momo.tistory.com/entry/C%EC%96%B8%EC%96%B4-%ED%91%9C%EC%A4%80-%EC%9E%85%EC%B6%9C%EB%A0%A5-%EC%A0%95%EB%A6%AC C언어 표준 입출력 정리]〉, 《티스토리》, 2015-10-30
 +
* ssung.k, 〈[https://ssungkang.tistory.com/entry/java%EC%82%AC%EC%9A%A9%EC%9E%90%EB%A1%9C-%EB%B6%80%ED%84%B0-%EA%B0%92-%EC%9E%85%EB%A0%A5%EB%B0%9B%EA%B8%B0-Scanner (java)사용자로 부터 값 입력받기, Scanner]〉, 《티스토리》, 2019-03-20
 +
 
 +
==같이보기==
 +
*[[명령문]]
 +
*[[대입문]]
 +
*[[입출력문]]
 +
 
 +
{{프로그래밍|검토 필요}}

2023년 12월 21일 (목) 14:39 기준 최신판

실행문(execute statement, executable statement)은 프로그래밍 언어에 있어서 대입 조작, 점프, 반복, 순서 호출 등과 같이 실제 동작을 지시하는 문장이다. 포트란(Fortran) 용어에서 실행문이라고 하면 실행시의 동작을 지정하는 용어이다.[1]

종류[편집]

대입문[편집]

대입 연산자(=)를 자료와 함께 작성한 것을 대입문이라고 한다.

C언어 기본식
int num01 = 7;
int num02 = 7;
int num03 = 7;  
num01 = num01 - 5;
num02 -= 5;
num03 =- 5;  
printf("- 연산자에 의한 결과값은 %d이다.\n", num01);
printf("-= 연산자에 의한 결과값은 %d이다.\n", num02);
printf("=- 연산자에 의한 결과값은 %d이다.\n", num03);  
실행 결과 : -  연산자에 의한 결과값은 2이다.
-= 연산자에 의한 결과값은 2이다.
=- 연산자에 의한 결과값은 -5이다.[2]
자바 기본식
public class Ex02_02_복합대입 {
    public static void main(String[] args){
        
        int a, b, c;
        a=3; // = 대입 연산자
        a += 5;//a=a+5; += 복합 대입 연산자
        
        System.out.println("a="+a);
        
        b=20;
        b -= 3;; //b=b-3;
        System.out.println("b="+b);
        
        char ch2 = 'b';
        ch2+=3;
        //ch2=ch2+3; //에러 98+3
        //ch2 = (char)ch2+3; //에러
        ch2 = (char)(ch2+3);
        
        System.out.println("ch2="+ch2);
        System.out.println("ch2="+(char)ch2);
        
        String fruit = "apple";
        fruit += "bananan";
        System.out.println("fruit=" + fruit);
    
    }
 
}
실행결과 : a=8
b=17
ch2=h
ch2=h
fruit=applebananan[3]

문자열[편집]

대입문은 문자열을 대입할 수도 있다.

C언어 예제
#define _CRT_SECURE_NO_WARNINGS    // strcpy 보안 경고로 인한 컴파일 에러 방지
#include <stdio.h>
#include <string.h>    // strcpy 함수가 선언된 헤더 파일

int main()
{
    char s1[10] = "Hello";    // 크기가 10인 char형 배열을 선언하고 문자열 할당
    char s2[10];              // 크기가 10인 char형 배열을 선언

    strcpy(s2, s1);        // s1의 문자열을 s2로 복사
    
    printf("%s\n", s2);    // Hello

    return 0;
}
실행 결과 : Hello[4]
자바 예제
String str = new String("Java");

System.out.println("원본 문자열 : " + str);

 

for (int i = 0; i < str.length(); i++) {

    System.out.print(str.charAt(i) + " ");

}

System.out.println("\ncharAt() 메소드 호출 후 원본 문자열 : " + str);
실행 결과 : 원본 문자열 : Java

J a v a 

charAt() 메소드 호출 후 원본 문자열 : Java[5]

배열[편집]

C언어 예제
#include <stdio.h>

int main()
{
    int numArr[10];     // 크기가 10인 배열 선언
    
    numArr[0] = 11;     // 인덱스가 0인 배열의 요소에 값 할당
    numArr[1] = 22;     // 인덱스가 1인 배열의 요소에 값 할당
    numArr[2] = 33;     // 인덱스가 2인 배열의 요소에 값 할당
    numArr[3] = 44;     // 인덱스가 3인 배열의 요소에 값 할당
    numArr[4] = 55;     // 인덱스가 4인 배열의 요소에 값 할당
    numArr[5] = 66;     // 인덱스가 5인 배열의 요소에 값 할당
    numArr[6] = 77;     // 인덱스가 6인 배열의 요소에 값 할당
    numArr[7] = 88;     // 인덱스가 7인 배열의 요소에 값 할당
    numArr[8] = 99;     // 인덱스가 8인 배열의 요소에 값 할당
    numArr[9] = 110;    // 인덱스가 9인 배열의 요소에 값 할당

    printf("%d\n", numArr[0]);    // 11: 배열의 첫 번째(인덱스 0) 요소 출력
    printf("%d\n", numArr[5]);    // 66: 배열의 여섯 번째(인덱스 5) 요소 출력
    printf("%d\n", numArr[9]);    // 110: 배열의 열 번째(인덱스 9) 요소 출력

    return 0;
}
실행 결과 : 11
66
110[6]
자바 예제
public class ArrayVariableTest {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int[] test = {1, 2, 3};
        int[] test2;
        
        test2 = test;
        
        System.out.println("test : " + test[0] + ", " + test[1] + ", " + test[2]);
        System.out.println("test2 : " + test2[0] + ", " + test2[1] + ", " + test2[2]);
        
        test[1] = 4;
        
        System.out.println("test : " + test[0] + ", " + test[1] + ", " + test[2]);
        System.out.println("test2 : " + test2[0] + ", " + test2[1] + ", " + test2[2]);
        
        test[2] = 5;
        
        System.out.println("test : " + test[0] + ", " + test[1] + ", " + test[2]);
        System.out.println("test2 : " + test2[0] + ", " + test2[1] + ", " + test2[2]);
        
    }
}
실행결과
test : 1, 2, 3
test2 : 1, 2, 3
test : 1, 4, 3
test2 : 1, 4, 3
test : 1, 4, 5
test2 : 1, 4, 5[7]

제어문[편집]

제어문(control statement)은 프로그램의 흐름을 지시하는 데 사용되는 문장들로서 특별한 전달을 유발하거나 이미 상술된 상황에 의한 전달을 실행시키는 포트란의 용어로 대표적으로 if 문, goto 문, return문이 있다.[8]

if문[편집]

if문은 선택 제어문 중에서 기본이 되는 명령문으로, 다음은 두 프로그래밍의 제어문의 예제이다.

C언어 예제
# include  < stdio.h >

void main ( void )
{

int  a ;
printf ( " 어떤 수를 입력하시오 : " ) ;
scanf ( " %d " , &a ) ;
if ( a % 2 ) printf ( " %d 는 홀수입니다. \n " , a ) ;
if ( ! ( a % 2 ) ) printf ( " %d는 짝수 입니다. \n " , a ) ;

}

실행 결과
어떤 수를 입력하시오 : 5    Enter Button Push
5 는 홀수입니다.[9]
자바 예제
public class IfExample1 {

	public static void main(String[] args) {
		
		char gender = 'M';
		
		if ( gender == 'F') {// { 중괄호시작 = 블록의 시작, 중괄호사이를 블록이라고 부름// 블록에서는 들여쓰기 해야 함(가독성)
			System.out.println("여성입니다.");
		}else {
			System.out.println("여성이 아닙니다.");
		}
		// 여성이 아닙니다.
	}

}[10]

goto문[편집]

goto문은 지정된 레이블(lable)로 무조건 분기하는 명령문으로 다음은 두 프로그래밍의 제어문의 예제이다.

C언어 예제
# include  < stdio.h >

void main ( void )
{

int  n = 0 ,  sum = 0 ;

begin :

n++ ;
sum += n ;
if ( n == 100 )

printf ( " 1 + 2 + 3 + ............ + 100 = %d \n " , sum ) ;

else

goto  begin ;

}

실행 결과
1 + 2 + 3 + .............. + 100 = 5050[9]
자바 예제

자바는 goto 대신 out을 이용한다.

public class GotoInJava {
    public static void main(String[] args) {
        int i = 0;
        int j = 0;
 
        outer:
        while(true) {
            i++;
            while(true) {
                j++;
                if(j % 10 == 0) break;
                if(i % 10 == 0) break outer;
                System.out.println(j);    
            }
        }  
        System.out.println("i : " + i);
        System.out.println("j : " + j);
    }    
}[11]

return문[편집]

return문은 현재의 함수에서 값이나 주소를 반환할 때 사용한다.[12]

C언어 예제
#include <stdio.h>

double half(int x)

{

return (x/2.0);

}

int main()

{

int number;

printf("숫자를 입력해주세요\n");

scanf("%d",&number);

printf("\n");

printf("%d의 반절은 %.1f입니다.",number,half(number));

getchar();

return 0;

}
실행결과 : 숫자를 입력해주세요
50
50의 반절은 25.0입니다.[13]
자바 예제
class MethodReturn 
{
	public static void main(String[] args) 
	{
		int result = adder(4,5);
		System.out.println("4와 5의 합 : " + result);
		System.out.println("3.5의 제곱 : " + square(3.5));

		String result2 = grade(88);
		System.out.println("합격여부 : " + result2);
	}

	public static int adder(int n1, int n2){
		int addResult = n1 + n2;
		return addResult;
	}

	public static double square(double num){
		return num * num;
	}

	public static String grade(int score){
		if(score >= 80)
		{
			return "합격";
		}
		else{
			return "불합격";
		}
	} // if문 안에서 return할 경우에는 반드시 else문으로 종료되어야 함.
}[14]

입출력문[편집]

입출력문은 입력과 출력을 담당하는 것으로 C언어에서는 printf, scanf, 자바에서는 print, printIn, printf, read등이 있다.

printf[편집]

printfscanf는 C언어에서 가장 많이 사용하는 표준 입출력 함수로써 <stdio.h> 헤더파일에 정의되어 있다. 출력 함수는 printf("출력내용 %d, integer); 과 같이 사용할 수 있고, 입력 함수는 scanf("%d %f", &integer, &float);와 같이 사용할 수 있다.

#include<stdio.h>

int main() {

  int integer;
  printf("input the value : ");
  scanf("%d \n", &integer);

  return 0;
}
결과
input the value : 100
100[15]

getchar[편집]

getchar 함수는 키보드로부터 한 번에 한 문자씩 읽어들이는 C언어의 함수이다. 아래와 같은 형식으로 사용한다.

int i;

i = getchar(); 

단점은 getchar로 숫자를 입력받을 시 두 자리 이상의 숫자를 받을 수 없다. putchar 함수는 화면에 한 문자씩 출력하는 함수이다. 파라미터의 아스키 코드값에 해당하는 문자를 출력한다.

#include<stdio.h>

int main() {

   char a1;
   a1 = getchar();
   putchar(a1);

   return 0;

}[15] 

gets[편집]

gets 함수는 키보드로부터 문자열을 읽어들여 문자열 포인터가 가리키는 장소에 기억시키며, 그 포인터를 되돌려 주는 C언어의 함수이다. 한 줄을 입력받을 때 사용할 수 있으며, space도 공백으로 문자열에 포함시킨다. 단점은 문자열 변수의 길이보다 긴 글자들을 입력할 경우 에러가 발생한다. puts 함수는 문자열을 화면으로 출력하는 함수이다. '\0'을 만나면 '\n'으로 바꾸어 출력한다.

#include<stdio.h>

int main() {

    char str[20];
    gets_s(str);
    puts(str);

    return 0;
}[15] 

Scanner[편집]

Scanner는 값을 입력받을 수 있는 자바클래스이다. 이를 통해서 정수, 실수, 단어, 줄단위를 쉽게 읽어올 수 있다.

호출

Scanner를 사용하기 위해서는 import를 통해 호출한다. java.util 패키지에 포함되어 있으므로 다음과 같이 import한다.

import java.util.Scanner;
객체 생성

scn라는 객체를 생성하여 System.in으로 입력한 값을 바이트 단위로 읽는 것을 의미한다.

Scanner scn = new Scanner(System.in);
예제
import java.util.Scanner;

public class test {

	public static void main(String[] args) {
		String name;
		int age;
		double height;
		String intro;
		String buffer;
		
		Scanner sc = new Scanner(System.in);
		System.out.println("이름을 입력하세요");
		name = sc.next();
		System.out.println("나이를 입력하세요");
		age = sc.nextInt();
		System.out.println("키를 입력하세요");
		height = sc.nextDouble();
		System.out.println("자기소개를 입력하세요");
		buffer = sc.nextLine();
		intro = sc.nextLine();
		
		System.out.println("이름은 "+name+"나이는 "+age+",키는 "+height+"입니다.");
		System.out.println(intro);
	}
}[16]

각주[편집]

  1. 실행문〉, 《네이버 지식백과》
  2. 대입 연산자〉, 《티시피스쿨》
  3. 즐거운깐족이, 〈(Java) 예제 연산자 복합대입〉, 《티스토리》, 2016-04-23
  4. 문자열을 복사하고 붙이기〉, 《코딩도장》
  5. java.lang.String 클래스〉, 《티시피스쿨》
  6. 배열의 요소에 값 할당하기〉, 《코딩도장》
  7. 꽁담, 〈(JAVA) 자바 배열변수 값 대입시 주의점과 다차원 배열〉, 《티스토리》, 2020-11-03
  8. 제어문〉, 《네이버 지식백과》
  9. 9.0 9.1 ( C 언어 스터디 )〉, 《성안당》
  10. foeverna, 〈(Java)제어문 - 조건문- if문〉, 《벨로그》, 2020-08-24
  11. SeYUN, 〈goto in java〉, 《티스토리》, 2018-02-13
  12. Return 문〉, 《위키백과》
  13. 느긋한 주인장, 〈c언어 return문〉, 《티스토리》, 2017-12-16
  14. Jamesy leather, 〈(Java) 메소드(Method) Return 키워드〉, 《티스토리》, 22020-06-25
  15. 15.0 15.1 15.2 La.place, 〈C언어 표준 입출력 정리〉, 《티스토리》, 2015-10-30
  16. ssung.k, 〈(java)사용자로 부터 값 입력받기, Scanner〉, 《티스토리》, 2019-03-20

참고자료[편집]

같이보기[편집]


  검수요청.png검수요청.png 이 실행문 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.