< 18강. for 문 3 >
* break
반복문 한 개를 빠져나옴
#include <stdio.h>
int main() {
for (int i = 1; ; i++){
int k;
scanf("%d",&k);
if (k ==0){
break;
}
printf("%d번쩨 : %d\n", i,k);
}
}
결과 :
2
1번쩨 : 2
3
2번쩨 : 3
4
3번쩨 : 4
2
4번쩨 : 2
1
5번쩨 : 1
2
6번쩨 : 2
4
7번쩨 : 4
4
8번쩨 : 4
0
logout
* continue
현재 돌고있는 루프를 한 번 건너뛰겠다는 것
int main() {
int n;
scanf("%d",&n);
// 1+2+4+5+7+8+10 3의 배수는 안더함
int sum = 0;
for (int i = 1 ;i <= n ; i++) {
if (i % 3 == 0){
continue;
}
sum += i;
}
printf("%d",sum);
}
* 중첩 for문 (!중요!)
int main() {
int n;
scanf("%d",&n);
/*
***
***
***
출력하기
*/
// 중첩 for문 일 경우 변수명을 다르게 해주기, 헷갈림
for (int i = 1; i <= n ;i ++){
for (int j = 1; j <= n ; j++){
printf("*");
}
printf("\n");
}
}
int main() {
int n;
scanf("%d",&n);
// 중첩 for문 일 경우 변수명을 다르게 해주기, 헷갈림
for (int i = 1; i <= n ;i ++){
for (int j = 1; j <= i ; j++){
printf("*");
}
printf("\n");
}
}
j <= i 일 경우 i가 1,2,3,...,10이 되기에 계단 모양이 출력된다.
< 19강. 섹션2 (연산자와 제어문) 종합문제 >
연산자 : + - / * % += -= ++ -- && || !
조건문 : if() switch()
반복문 : while() for()
/*
1. 시험점수 입력을 받아서 등급을 매겨라
90 ~ 100 : A
80 ~ 89 : B
70 ~ 79 : C
60 ~ 69 : D
50 ~ 59 : E
*/
#include <stdio.h>
int main() {
int score;
scanf("%d",&score);
if (score > 100 || score <0){
printf("잘못 입력했습니다");
}
else if (score >= 90){
printf("A\n");
}
else if (score >= 80){
printf("B\n");
}
else if (score >= 70){
printf("C\n");
}
else if (score >= 60 ){
printf("D\n");
}
else {
printf("E\n");
}
}
if 문 뒤에 한 줄 일경우 중괄호 생략 가능
/*
2. 자연수 입력 : n
n의 약수를 다 출력
*/
#include <stdio.h>
int main() {
int n;
scanf("%d",&n);
for (int i = 1; i <= n ;i++){
if (n % i == 0){
printf("%d ,",i);
}
}
}
/*
3. 일의 자릿수가 3,6,9인 경우 * 출력
1 2 * 4 5 * .... n 까지
*/
#include <stdio.h>
int main() {
int n;
scanf("%d",&n);
for (int i = 1 ; i <= n ; i++){
int k = i % 10;
if (k == 3 || k == 6 || k == 9){
printf("* ");
}
else {
printf("%d ", i);
}
}
}
/*
4. n = 4
1
1 3
1 3 5
1 3 5 7
출력
*/
#include <stdio.h>
int main() {
int n;
scanf("%d",&n);
for (int i = 1; i <= n ; i++){
for (int j = 1; j <= i ; j++){
printf("%d ",2*j-1);
}
printf("\n");
}
}
#include <stdio.h>
int main() {
int n;
scanf("%d",&n);
for (int i = 1; i <= n ; i++){
for (int j = 1; j <= 2*i-1 ; j += 2){
printf("%d ",j);
}
printf("\n");
}
}
둘 다 가능
/*
5. n = 4
1
1 2 3
1 2 3 4 5
1 2 3 4 5 6 7
*/
#include <stdio.h>
int main(){
int n;
scanf("%d",&n);
for (int i = 1 ; i <= 2*n-1;i += 2) {
for (int j = 1; j <= i; j++){
printf("%d",j);
}
printf("\n");
}
}
#include <stdio.h>
int main(){
int n;
scanf("%d",&n);
for (int i = 1 ; i <= n;i++) {
for (int j = 1; j <= 2*i-1; j++){
printf("%d",j);
}
printf("\n");
}
}
둘 다 가능!