728x90
728x170
쉽게 풀어 쓴 C언어 Express 7장 프로그래밍 문제 해설
쉽게 풀어 쓴 C언어 Express 7장 프로그래밍 문제 해설
1.
(a)
#include <stdio.h>
int main(void) {
int i, sum;
i = 1;
sum = 0;
while(i<=100) {
if( (i%3)==0 )
sum += i;
i++;
}
printf("1부터 100 사이의 모든 3의 배수의 합은 %d입니다. \n", sum);
return 0;
}
(b)
#include <stdio.h>
int main(void) {
int i, sum;
sum = 0;
for (i=1;i<=100;i++)
if( (i%3)==0 )
sum += i;
printf("1부터 100 사이의 모든 3의 배수의 합은 %d입니다. \n", sum);
return 0;
}
(c)
#include <stdio.h>
int main(void) {
int i, sum;
i = 1;
sum = 0;
do {
if( (i%3)==0 )
sum += i;
i++;
}
while(i<=100) ;
printf("1부터 100 사이의 모든 3의 배수의 합은 %d입니다. \n", sum);
return 0;
}
2.
#include <stdio.h>
int main(void) {
int number, sum;
sum = 0;
while (scanf("%d", &number) != EOF ) {
sum += number;
}
printf("정수의 합은 %d입니다. \n", sum);
return 0;
}
3.
#include <stdio.h>
int main(void) {
int y, x;
for (y=0;y<7;y++) {
for (x=0;x<(6-y);x++)
printf(" ");
for (x=6-y;x<7;x++)
printf("*");
printf("\n");
}
return 0;
}
4.
#include <stdio.h>
int main(void) {
int x, y, number;
printf("정수를 입력하시오: ");
scanf("%d", &number);
for (y=1;y<=number;y++) {
for (x=1;x<=y;x++)
printf("%d ", x);
printf("\n");
}
return 0;
}
5.
#include <stdio.h>
int main(void) {
int counter, i;
printf("카운터의 초기값을 입력하시오: ");
scanf("%d", &counter);
for (i=counter;i>=1;i--) {
printf("%d ", i);
}
printf("\a");
return 0;
}
6.
// 간단한 산술 계산기 프로그램
#include <stdio.h>
int main(void) {
char op;
int x, y;
while(1) {
printf("*****************\n");
printf("A---- Add \n");
printf("S---- Subtract \n");
printf("M---- Multiply \n");
printf("D---- Divide \n");
printf("Q---- Quit \n");
printf("*****************\n");
printf("연산을 선택하시오:");
scanf(" %c", &op);
if( op == 'Q' )
break;
printf("두수를 공백으로 분리하여 입력하시오: ");
scanf("%d %d", &x, &y);
if( op == 'A' )
printf("%d \n", x + y); else if( op == 'S' )
printf("%d \n", x - y); else if( op == 'M' )
printf("%d \n", x * y); else if( op == 'D' )
printf("%d \n", x / y); else
printf("지원되지 않는 연산자입니다. \n");
}
return 0;
}
7.
#include <stdio.h>
int main(void) {
int i, j;
for (i=2; i<=100 ; i++) {
for (j=2; j<i ; j++) {
if( i%j == 0 ) goto A;
}
printf("%d ", i);
A: ;
}
return 0;
}
8.
#include <stdio.h>
int main(void) {
int i, j, height;
while(1) {
printf("막대의 높이(종료: -1): ");
scanf("%d", &height);
if( height == -1 )
break;
for (j=0; j<height; j++)
printf("*");
printf("\n");
}
return 0;
}
9.
#include <stdio.h>
int main(void) {
int i, sum;
i=0;
sum = 0;
while(1) {
i++;
sum += i;
if( sum >= 10000 )
break;
}
printf("1부터 %d까지의 합이 %d입니다.", (i-1), sum-i);
return 0;
}
1부터 140까지의 합이 9870입니다.
10.
#include <stdio.h>
int main(void) {
int n, i;
double r, result;
printf("실수의 값을 입력하시오: ");
scanf("%lf", &r);
printf("거듭제곱횟수를 입력하시오: ");
scanf("%d", &n);
result = 1.0;
for (i=0;i<n; i++)
result *= r;
printf("결과값은 %f", result);
return 0;
}
11.
#include <stdio.h>
int main(void) {
int n, i;
int result;
printf("n의 값을 입력하시오: ");
scanf("%d", &n);
result = 0;
for (i=1;i<=n; i++)
result += i*i;
printf("계산값은 %d입니다.", result);
return 0;
}
12.
#include <stdio.h>
int main(void) {
int i, a=0, b=1, c, n;
printf("몇번째 항까지 구할까요? ");
scanf("%d", &n);
for (i=0;i<=n;i++) {
printf("%d, ", a);
c = a+b;
a = b;
b = c;
}
return 0;
}
13.
#include <stdio.h>
int main(void) {
int n, r, result, i;
printf("n의 값: ");
scanf("%d", &n);
printf("r의 값: ");
scanf("%d", &r);
result = 1;
for (i=n;i>=(n-r-1);i--)
result = result *i;
printf("%d, ", result);
return 0;
}
14.
#include <stdio.h>
#include <math.h>
int main(void) {
int x, digit;
printf("정수를 입력하시오: " );
scanf("%d", &x);
do {
digit = x % 10;
x /= 10;
printf("%d", digit);
}
while(x != 0);
return 0;
}
728x90
그리드형
'IT > 프로그래밍' 카테고리의 다른 글
쉽게 풀어 쓴 C언어 Express 9장 프로그래밍 문제 해설 (0) | 2020.12.10 |
---|---|
쉽게 풀어 쓴 C언어 Express 8장 프로그래밍 문제 해설 (1) | 2020.12.09 |
쉽게 풀어 쓴 C언어 Express 6장 프로그래밍 문제 해설 (0) | 2020.12.08 |
쉽게 풀어 쓴 C언어 Express 5장 프로그래밍 문제 해설 (0) | 2020.12.08 |
쉽게 풀어 쓴 C언어 Express 4장 프로그래밍 문제 해설 (0) | 2020.12.08 |
댓글