SMALL
누구나 쉽게 즐기는 c언어 콘서트 개정판 12장 프로그래밍
1번문제
#include<stdio.h>
int main(void) {
char name[50];
int age, pay;
FILE* fp = NULL;
printf("직원 이름: ");
scanf("%s", name);
printf("나이: ");
scanf("%d", &age);
printf("월급: ");
scanf("%d", &pay);
fp = fopen("employee.txt", "w");
fprintf(fp,"직원 이름 : %s\n나이 : %d\n월급 : %d", name, age, pay);
fclose(fp);
return 0;
}
|
cs |
2번문제
#include<stdio.h>
int main(void) {
int sum = 0, num, cnt = 0;
FILE* fp = NULL;
fp = fopen("jungsu.txt", "r");
if (fp == NULL) {
printf("파일이 없습니다.");
exit(0);
}
while(!feof(fp)){
fscanf(fp, "%d", &num);
sum += num;
cnt++;
}
printf("정수들의 개수: %d\n",cnt);
printf("정수들의 합계: %d\n", sum);
printf("정수들의 평균: %.2f\n", (float)sum/cnt);
return 0;
}
|
cs |
3번문제
#include<stdio.h>
int main(void) {
char str[1000];
FILE* fp = fopen("message.txt", "r");
int cnt = 0, ret;
if (fp == NULL) {
printf("파일이 없습니다.");
exit(0);
}
while (!feof(fp)) {
ret = fgets(str, 1000, fp);
cnt++;
if (ret == 0)
break;
printf("%s", str);
}
printf("\n\n라인의 개수 =%d", cnt);
return 0;
}
|
cs |
4번문제
#include<stdio.h>
int main(void) {
FILE* fp1 , *fp2;
float num;
fp1 = fopen("mistake.txt", "w");
fp2 = fopen("mistake.bin", "wb");
for (int i = 0; i < 100; i++) {
num = (rand() % 100) / 10.0;
fprintf(fp1,"%.2f ",num);
fprintf(fp2, "%.2f ", num);
}
return 0;
}
|
cs |
5번문제
#include<stdio.h>
int main(void) {
FILE* fp1, * fp2;
char file1[100], file2[100];
printf("첫번째 파일 이름: ");
scanf("%s", file1);
printf("두번째 파일 이름: ");
scanf("%s", file2);
fp1 = fopen(file1, "r");
fp2 = fopen(file2, "r");
if (fp1 == NULL || fp2 == NULL) {
printf("파일이 없습니다");
return 0;
}
while (!feof(fp1)) {
if (fgetc(fp1) != fgetc(fp2)) {
printf("두 파일은 서로 다릅니다.");
exit(0);
}
;
}
printf("두 파일은 서로 같습니다.");
return 0;
}
|
cs |
6번문제
#include<stdio.h>
int main(void) {
char filename[100];
char str[100];
FILE* fp = NULL;
printf("파일 이름을 입력하시오: ");
scanf("%s",filename);
fp = fopen(filename, "r");
if (filename == NULL) {
printf("파일이 없습니다.");
exit(0);
}
int i = 1 ,ret;
while (!feof(fp)) {
printf("%-5d",i++);
ret = fgets(str,1000,fp);
printf("%s",str);
}
fclose(fp);
return 0;
}
|
cs |
7번문제
#include<stdio.h>
int main(void) {
char filename[100];
char str[100];
char ch;
FILE* fp = NULL;
printf("파일 이름을 입력하시오: ");
scanf("%s", filename);
scanf("%c", &ch);
fp = fopen(filename, "w");
while (1) {
char *p = gets(str);
if (*p == NULL) break;
fprintf(fp, "%s\n", str);
}
fclose(fp);
return 0;
}
|
cs |
8번문제
#include<stdio.h>
#include<string.h>
int main(void) {
FILE* fp1, * fp2;
char file1[100], file2[100];
char str1[100], str2[100];
printf("첫번째 파일 이름: ");
scanf("%s", file1);
printf("두번째 파일 이름: ");
scanf("%s", file2);
fp1 = fopen(file1, "r");
fp2 = fopen(file2, "r");
if (fp1 == NULL || fp2 == NULL) {
printf("파일이 없습니다");
return 0;
}
while (!feof(fp1)) {
fgets(str1, 100, fp1);
fgets(str2, 100, fp2);
if (strcmp(str1,str2)) {
printf("%s\n", str1);
printf("%s\n", str2);
exit(0);
}
;
}
printf("두 파일은 서로 같습니다.");
return 0;
}
|
cs |
9번문제
#include<stdio.h>
#include<conio.h>
int main(void) {
char filename[100];
char str[100];
char stop;
int a;
printf("첫번째 파일 이름: ");
scanf("%s", filename);
FILE* fp = fopen(filename,"r");
if (fp == NULL) {
printf("파일이 없습니다.");
exit(0);
}
while (!feof(fp)) {
getch();
for (int i = 0; i < 5; i++) {
a = fgets(str, 100, fp);
if (a == 0) return 0;
printf("%s", str);
}
}
return 0;
}
|
cs |
10번문제
#include<stdio.h>
#include<string.h>
void writedata(char filename[], char str1[]);
void readdata(char filename[]);
void searching(char filename[], char bookname[]);
int main(void) {
FILE* fp = fopen("bookdata.txt", "a");
int menu, ret;
char str[100];
fclose(fp);
while (1) {
printf("============\n1. 추가\n2. 츨력\n3. 검색\n4. 종료\n============\n정수를 입력하시오 : ");
scanf("%d", &menu);
getchar();
printf("\n");
switch (menu) {
case 1:
writedata("bookdata.txt", "도서의 이름");
writedata("bookdata.txt", "저자");
writedata("bookdata.txt", "출판사");
printf("\n");
break;
case 2:
readdata("bookdata.txt");
break;
case 3:
printf("제목을 입력하세요: ");
gets_s(str, 100);
searching("bookdata.txt", str);
break;
case 4:
return 0;
}
}
return 0;
}
void writedata(char filename[], char str1[]) {
char str[100];
FILE* fp = fopen(filename, "a");
printf("%s:", str1);
gets_s(str, 100);
fprintf(fp, "%s: %s\n", str1, str);
fclose(fp);
}
void readdata(char filename[]) {
char str[100];
int ret;
FILE* fp = fopen(filename, "r");
while (!feof(fp)) {
ret = fgets(str, 100, fp);
if (ret == 0) break;
printf("%s", str);
}
fclose(fp);
}
void searching(char filename[], char bookname[]) {
char str[100] = "도서의 이름: ";
strcat(str, bookname);
char tmp[100];
int ret;
FILE* fp = fopen(filename, "r");
while (!feof(fp)) {
fgets(tmp, 100, fp);
if (strstr(tmp, str)) {
printf("%s", tmp);
fgets(tmp, 100, fp);
printf("%s", tmp);
fgets(tmp, 100, fp);
printf("%s", tmp);
fclose(fp);
return 0;
}
}
fclose(fp);
printf("없습니다.\n");
return 0;
}
|
cs |
LIST
'프로그래밍 언어 > C언어' 카테고리의 다른 글
누구나 쉽게 즐기는 c언어 콘서트 개정판 14장 programming (0) | 2021.05.27 |
---|---|
누구나 쉽게 즐기는 c언어 콘서트 개정판 13장 programming (0) | 2021.05.26 |
누구나 쉽게 즐기는 c언어 콘서트 개정판 11장 programming (0) | 2021.05.22 |
누구나 쉽게 즐기는 c언어 콘서트 개정판 10장 programming (0) | 2021.02.01 |
누구나 쉽게 즐기는 c언어 콘서트 개정판 9장 programming (0) | 2021.01.30 |