프로그래밍 언어/C언어

<C> FOR문 연습 1

창조적생각 2021. 6. 28. 16:56

1. for 문을 사용하여 1에서 100까지 출력하고 합계와 평균을 구하라.

(한 행에 10개만 들어가게 출력할것)

 

[결과]

1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100

합계 : 5050
평균 : 50

 

[풀이]

#include<stdio.h>
void main()
{
int i;
int sum = 0, count = 0; 
for(i=1; i<=100; i++){
printf("%d ",i);
if(i%10 == 0){ //10의 배수일때 뒤에 \n입력
printf("\n");}
sum+=i;
count++ //count 대신 i를 사용해도 무방함
}
printf("\n합계 : %d\n",sum);
printf("평균 : %d\n", sum/count)
}

 

2. 알파벳 A부터 Z까지 출력하기

[결과]

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

 

[풀이]

#include<stdio.h>
void main()
{
char i;
for(i='A'; i<='Z'; i++)
printf("%c ",i); //%c 뒤에 한칸 띄어쓰기를 넣어줘서 출력될 때 한 글자씩 띄어쓰이게 한다.

}

 

 

2-1 대문자와 소문자 알파벳을 각각 출력하라. 단 대문자와 소문자 사이에 구분은 '-'를 이용한다.

 

[결과]

ABCDEFGHIJKLMNOPQRSTUVWXYZ
--------------------------
abcdefghijklmnopqrstuvwxyz

 

[풀이]

#include<stdio.h>
void main()
{
char i;
for(i='A'; i<='Z'; i++)
printf("%c",i);
printf("\n");
for(i='A'; i<='Z'; i++) // ---를 알파벳 길이만큼 늘려준다.
printf("-");
printf("\n");
for(i = 'a'; i<='z'; i++)
printf("%c",i);

 

 

2-2 대문자와 소문자 알파벳을 각각의 아스키 코드와 함께 출력하라.

[결과]
A : 65 B : 66 C : 67 D : 68 E : 69 F : 70 G : 71 H : 72 I : 73 J : 74 K : 75 L : 76 M : 77 N : 78 O : 79 P : 80 Q : 81 R : 82 S : 83 T : 84 U : 85 V : 86 W : 87 X : 88 Y : 89 Z : 90 //A ~Z 는 아스키 코드 65 ~ 90

a : 97 b : 98 c : 99 d : 100 e : 101 f : 102 g : 103 h : 104 i : 105 j : 106 k : 107 l : 108 m : 109 n : 110 o : 111 p : 112 q : 113 r : 114 s : 115 t : 116 u : 117 v : 118 w : 119 x : 120 y : 121 z : 122 //a ~ z는 97 ~ 122

 

[풀이]

#include<stdio.h>
void main()
{
int i;
for(i='A'; i<='Z'; i++)
printf("%c : %d ",i,i); //%c로 문자출력, %d로 정수출력
printf("\n");
for(i = 'a'; i<='z'; i++)
printf("%c : %d ",i,i);
 
}

 

3. scanf 함수를 통해 몇단의 구구단을 시행할 지 입력하고 구구단이 출력되게 하라.

 

[결과]
몇단?3
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
3 * 4 = 12
3 * 5 = 15
3 * 6 = 18
3 * 7 = 21
3 * 8 = 24
3 * 9 = 27

 

[풀이]

#include<stdio.h>
void main()
{
int i, n;
printf("몇단?");
scanf("%d",&n);
for(i=1; i<=9; i++)
printf("%d * %d = %d\n",n,i,n*i);

 }

4. 직사각형의 폭과 높이를 입력하여 사각형을 만들어보시오. 채울 문자를 입력해서 만드시오.

 

[결과]

직사각형의 폭과 높이를 입력하시오5 5
직사각형을 그릴 문자?a
aaaaa
aaaaa
aaaaa
aaaaa
aaaaa

[풀이]

#include<stdio.h>
int main(void)
{
int width, height;
char ch;
int i, j;

printf("직사각형의 폭과 높이를 입력하시오");
scanf("%d %d",&width, &height);
printf("직사각형을 그릴 문자?");
scanf(" %c",&ch);
for(i=0; i<height; i++){ //행을 먼저 지정하고
for(j=0;j<width;j++) //열을 만든다.
printf("%c",ch);
printf("\n");}
}

728x90