1. 종이접기
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
double height = 0.001;
int count = 0;
while(height < 8800){
height *= 2;
count++;
}
printf("종이 접는 횟수: %d", count);
}
2. 디지털 시계
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main() {
int hour, min ,sec;
hour = min = sec = 0;
while(1){
system("cls");
printf("%02d: %02d: %02d", hour, min, sec);
sec++;
if(sec == 60) {
min++;
sec = 0;
}
if(min == 60) {
hour++;
min = 0;
}
if(hour == 24) {
hour = min = sec = 0;
}
Sleep(1000);
}
}
3. 숫자 추측하기
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
srand(time(NULL));
int randNum = rand() % 100;
int selectNum = 0, count = 0;
do{
printf("정답을 추측하여 보시오: ");
scanf("%d", &selectNum);
if(randNum < selectNum){
printf("제시한 정수가 높습니다.");
} else if (randNum > selectNum){
printf("제시한 정수가 낮습니다.");
} else {
printf("제시한 정수와 같습니다.");
break;
}
count++;
} while(randNum != selectNum);
printf("축하합니다! 시도 횟수: %d", count);
}
4. 정수의 자리수 계산
#include <stdio.h>
int main(){
long long num = 0;
int count = 1;
printf("정수를 입력하시오: ");
scanf("%lld", &num);
while(num/10 != 0){
num /= 10;
count++;
}
printf("총 자리수: %d", count);
}
5. 복리의 무서움
#include <stdio.h>
int main(){
double money = 1.0;
for(int i=1; i<=30; i++){
printf("%d일날 현재 금액 = %lf\n", i, money);
money *= 2;
}
}
6. 약수 구하기
#include<stdio.h>
int main(){
int num = 0;
printf("정수를 입력하시오: ");
scanf("%d", &num);
for (int i=1; i<=num; i++){
if(num%i==0){
printf("%d ", i);
}
}
}
7. 조화수열 계산하기
#include<stdio.h>
int main(){
int num = 0;
double result = 0.0;
printf("항의 개수: ");
scanf("%d", &num);
for(int i=1; i<=num; i++){
result += 1.0/i;
}
printf("수열의 합: %lf", result);
}
8. 구구단
#include <stdio.h>
int main(){
for(int i=1; i <=9 ; i++){
for(int j=1; j <=9 ; j++){
printf("%dX%d=%d\n", i, j, i*j);
}
printf("\n\n");
}
}
9. 산수 문제 자동 출제
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
//[산수 문제 자동 출제]
srand(time(NULL));
printf("산수 문제를 자동으로 출제합니다. \n");
while (1) {
int first = rand() % 100;
int second = rand() % 100;
int input = 0;
printf("%d + %d = ", first, second);
scanf("%d", &input);
if (first + second == input) {
printf("맞았습니다.\n");
break;
}
else {
printf("틀렸습니다.\n");
}
}
}
10. 소수 찾기
#include<stdio.h>
int main(){
int num = 0, count=0;
printf("어디까지 찾을까요?: ");
scanf("%d", &num);
for(int i=2; i<=num; i++){
for(int j=1; j<=i; j++){
if(i%j==0){
count++;
}
}
if(count == 2){
printf("%d, ", i);
}
count = 0;
}
}
11. NIM게임
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
srand(time(NULL));
int stickCount = 12;
int computer = 0;
int getStick = 0;
while (1) {
printf("현재 스틱의 개수: %d\n", stickCount);
// 사용자 입력 처리 (1 ~ 3개의 스틱을 가져가도록 유효성 검사)
do {
printf("몇 개의 스틱을 가져가시겠습니까? (1~3개): ");
scanf("%d", &getStick);
if (getStick < 1 || getStick > 3) {
printf("잘못된 입력입니다. 1에서 3 사이의 숫자를 입력하세요.\n");
}
} while (getStick < 1 || getStick > 3);
// 스틱을 사용자가 가져가고 게임이 끝나는지 확인
stickCount -= getStick;
if (stickCount <= 0) {
printf("컴퓨터 승리!\n");
break;
}
// 컴퓨터가 스틱을 가져감 (1 ~ 3개의 스틱 중 무작위)
computer = (rand() % 3) + 1;
printf("컴퓨터는 %d개의 스틱을 가져갔습니다.\n", computer);
// 스틱을 컴퓨터가 가져가고 게임이 끝나는지 확인
stickCount -= computer;
if (stickCount <= 0) {
printf("사용자 승리!\n");
break;
}
}
return 0;
}
'2학년 2학기 > c언어' 카테고리의 다른 글
8장 함수 (0) | 2024.10.25 |
---|---|
7장 배열 (1) | 2024.10.25 |
5장 조건문 (0) | 2024.10.24 |
4장 수식과 연산자 (0) | 2024.10.23 |
3장 변수와 자료형 (0) | 2024.10.23 |