HW7
#pragma warning (disable : 4996)
#include <stdio.h>
double inputDis();
double inputSpe();
void output(double,double);
int main() {
int i = 0;
while (i < 3) {
double distance = inputDis();
double speed = inputSpe();
output(distance, speed);
i++;
}
return 0;
}
double inputDis() {
double num;
printf("* 거리를 입력하시오(km단위) : ");
scanf("%lf", &num);
return num;
}
double inputSpe() {
double num;
printf("* 속도를 입력하시오(km/h단위) : ");
scanf("%lf", &num);
return num;
}
void output(double num1, double num2) {
int hour = int(num1 / num2);
int min = int(((num1 / num2) - double(hour)) * 60);
double sec = ((((num1 / num2) - double(hour)) * 60 - double(min)) * 60);
printf("%.2lf km = >%d시간 %d분 %.3lf 초 소요됨\n\n", num1, hour, min, sec);
return;
}
HW8
#pragma warning (disable : 4996)
#include <stdio.h>
int main() {
int his, lit, art;
printf("역사, 문학, 예능 점수를 입력하세요 : ");
scanf("%d %d %d", &his, &lit, &art);
int sum = his + lit + art;
double average = double(sum) / 3.0;
printf("총점은 %d 이고 평균은 %.2lf 입니다.", sum, average);
return 0;
}
HW9
#pragma warning (disable : 4996)
#include <stdio.h>
int input();
int main() {
int number;
number = input();
printf("입력된 값은 8진수로 %#o 입니다\n입력된 값은 16진수로 %#x.", number, number);
return 0;
}
int input() {
int num;
printf("정수값을 입력하세요 :");
scanf("%d", &num);
return num;
}
HW10
#pragma warning (disable : 4996)
#include <stdio.h>
int main() {
int num1, num2;
printf(":두개의 정수를 입력하시오 : ");
scanf("%d %d", &num1, &num2);
printf("%d+%d = %d\n", num1,num2,num1 + num2);
printf("%d-%d = %d\n", num1, num2, num1 - num2);
printf("%d*%d = %d\n", num1, num2, num1 * num2);
printf("%d/%d = %.2lf", num1, num2 ,double(num1) / double(num2));
}
HW11
#pragma warning (disable : 4996)
#include <stdio.h>
int main() {
int value;
printf("ASCII code값을 입력하시오 : ");
scanf("%d", &value);
printf("%d은 \'%c\'의 ASCII code 입니다.", value, char(value));
return 0;
}
HW12
#pragma warning (disable : 4996)
#include <stdio.h>
#include <string.h>
/*
int main() {
char name[20];
printf("이름을 입력하시오 :");
scanf("%[^\n]", name);
printf("\"%s\"\n", name);
printf("\"%20s\"\n", name);
printf("\"%-20s\"", name);
return 0;
}
*/
int main() {
char name[20];
printf("이름을 입력하시오 :");
scanf("%s", name);
printf("\"%s\"\n", name);
printf("\"%20s\"\n", name);
printf("\"%-20s\"", name);
return 0;
}
HW13
#pragma warning (disable : 4996)
#include <stdio.h>
#include <string.h>
//void null(int);
int main() {
char firName[20], secName[20];
printf("#성을 입력하시오 :");
scanf("%s", firName);
printf("#이름을 입력하시오 :");
scanf("%s", secName);
int firLen = strlen(firName);
int secLen = strlen(secName);
printf("%s %s\n", firName, secName);
printf("%*d %*d\n", firLen, firLen, secLen, secLen);
// null(firLen);
// null(secLen);
return 0;
}
/*
void null(int num) {
int i = 1;
while (i < num) {
printf(" ");
i++;
}
printf("%d ", num);
return;
}
*/
// 성과 이름이 10자리 이상 넘어갈때 해결못함
HW14
#pragma warning (disable : 4996)
#include <stdio.h>
#include <string.h>
int main() {
char str[20];
printf("* 문자열 입력 : ");
scanf("%[^\n]", str);
int strLen = strlen(str);
{
printf("[");
int i = 1;
while (i <= (strLen - (strLen / 2))) {
printf("_");
i++;
}
}
printf("%s", str);
{
int i = 1;
printf(" ");
while (i <= (strLen - (strLen / 2))) {
printf("\b\b ");
i++;
}
}
printf("\b. . .]");
return 0;
}
//솔직히 너무 야매...
HW16
#pragma warning (disable : 4996)
#include <stdio.h>
int input();
int calc(int);
void output(int);
int main() {
int num = input();
int pay = calc(num);
output(pay);
return 0;
}
int input() {
int num;
printf("역수를 입력하시오 : ");
scanf("%d", &num);
return num;
}
int calc(int num) {
if (num < 6) {
return 600;
}
else {
if (num < 11) {
return 800;
}
else {
int i = 1;
int res = 800;
while (i <= num - 10) {
if (i % 2 == 1) {
res = res + 100;
}
i++;
}
return res;
}
}
}
void output(int num) {
printf("요금 : %d",num);
return;
}
HW18
#pragma warning (disable : 4996)
#include <stdio.h>
int inputAge();
int inputCou();
int calc(int,int);
void output(int,int);
int main() {
int age = inputAge();
int count = inputCou();
int res = calc(age, count);
if (count < 5) {
output(res,res);
}
else {
output(res, int(res*0.9));
}
return 0;
}
int inputAge() {
int num;
printf("입장객의 나이를 입력하시오 : ");
scanf("%d", &num);
return num;
}
int inputCou() {
int num;
printf("입장객의 수를 입력하시오 : ");
scanf("%d", &num);
return num;
}
int calc(int num1, int num2) {
if (num1 > 19) {
if (num1 < 56) {
return 1500 * num2;
}
else {
return 500 * num2;
}
}
else {
if (num1 > 8) {
if (num1 > 13) {
return 1000 * num2;
}
else {
return 700 * num2;
}
}
else {
return 500 * num2;
}
}
}
void output(int num1,int num2) {
printf("입장료 => %d원\n할인금약 => %d원\n결제금액 => %d원\n", num1, num1 - num2, num2);
return;
}
HW19
#pragma warning (disable : 4996)
#include <stdio.h>
#include <string.h>
int input();
int yearCheck(int);
void output(int, int);
int main() {
int year = input();
int res = yearCheck(year);
output(year, res);
return 0;
}
int input() {
int num;
printf("년도를 입력하시오 : ");
scanf("%d", &num);
return num;
}
int yearCheck(int num) {
if (num % 4 != 0) {
return 0;
}
else {
if (num % 100 != 0) {
return 1;
}
else {
if (num % 400 == 0) {
return 1;
}
else {
return 0;
}
}
}
}
void output(int num1, int num2) {
char res[30];
if (num2 == 0) {
strcpy(res, "평년(Common year)");
}
else {
strcpy(res, "윤년(Leap year)");
}
printf("%d년은 %s입니다.", num1, res);
return;
}