자바 생기초질문 흑...

자바 생기초질문 흑...

QA

자바 생기초질문 흑...

본문

선배님들 자바에서 for문 변수설정시 for문안에 하면 안되는이유가 뭔지아시나요?? 구구단 출력문제입니다

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt(); //3
        //int n = 1; //요건되고
        for(int i = 0; i < 9;i++) {
            int n = 1; //요건왜 안될까요??
            System.out.println(N + " * " + n + " = " + (N * n));
            n++;     
        }
        
    }
}

이 질문에 댓글 쓰기 :

답변 2

왜 신고가 되었는지는 모르겠지만,

 

가장 기초적인 질문이네요.

 

for 문안에 n=1 로 하고, n++로 증가해도 항상 n값은 1이되니,  문법적으로는 문제가 없지만,  런타임시 실제로 원하는 값이 안나오는 것이죠.

 

자바 기초 문법강의를 더 많이 보세요

변수 선언은 한번만 되어야 합니다. int n;

int n = 1;

은 변수 선언과 할당이 같이 되어있는 구문입니다.

 

변수 선언을 for문 안에 넣으면.. 반복문안에 변수 선언이 반복되기 때문에 문제가 됩니다.

 

다음과 같이 하는 것은 가능합니다.

 

int n;

for(int i = 0; i < 9;i++) {
  n = 1; 

답변을 작성하시기 전에 로그인 해주세요.
전체 69
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT