๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โœ’๏ธ C Programming/๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ ์ฆ๊ธฐ๋Š” C ์–ธ์–ด ์ฝ˜์„œํŠธ_๊ฐœ์ • 3ํŒ

[๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ ์ฆ๊ธฐ๋Š” C ์–ธ์–ด ์ฝ˜์„œํŠธ - ๊ฐœ์ • 3ํŒ] 12์žฅ Programming ํ’€์ด (2)

by A Lim Han 2023. 1. 30.

# 12์žฅ Programming ํ’€์ด (2)

 

 

490p_7๋ฒˆ)

#include <stdio.h>
#include <string.h>

int main()
{
	int change = 0;

	char one[20];
	char two[20];
	char get_one[100];
	char get_two[100];

	FILE* file1;
	FILE* file2;

	printf("์ฒซ ๋ฒˆ์งธ ํŒŒ์ผ๋ช…: ");
	gets_s(one, 20);

	printf("๋‘ ๋ฒˆ์งธ ํŒŒ์ผ๋ช…: ");
	gets_s(two, 20);

	fopen_s(&file1, one, "r");
	fopen_s(&file2, two, "r");

	while (!feof(file1))
	{
		fgets(get_one, 100, file1);
		fgets(get_two, 100, file2);

		if (strcmp(get_one, get_two) != 0)
		{
			printf("\n๋‹ค๋ฅธ ๋ถ€๋ถ„: %s๊ณผ %s\n", get_one, get_two);
			change = 1;
		}
	}

	if (change == 0)
	{
		printf("\n๋‘ ํŒŒ์ผ์€ ์„œ๋กœ ๊ฐ™์Šต๋‹ˆ๋‹ค.\n");
	}

	fclose(file1);
	fclose(file2);

	return 0;
}

 

 

 

 

490p_8๋ฒˆ)

#include <stdio.h>

int main()
{
	char file1[20];
	char file2[20];
	char get1[100];
	char get2[100];
	char result_file[20];

	FILE* fp1;
	FILE* fp2;
	FILE* result;

	printf("์ฒซ ๋ฒˆ์งธ ํŒŒ์ผ๋ช…: ");
	gets_s(file1, 20);

	printf("๋‘ ๋ฒˆ์งธ ํŒŒ์ผ๋ช…: ");
	gets_s(file2, 20);

	printf("ํ•ฉ์นœ ํŒŒ์ผ๋ช…: ");
	gets_s(result_file, 20);

	fopen_s(&fp1, file1, "r");
	fopen_s(&fp2, file2, "r");
	fopen_s(&result, result_file, "w");

	while (!feof(fp1))
	{
		fputs(fgets(get1, 100, fp1), result);
	}

	while (!feof(fp2))
	{
		fputs(fgets(get2, 100, fp2), result);
	}

	fclose(fp1);
	fclose(fp2);
	fclose(result);

	return 0;
}

 

 

 

 

490p_9๋ฒˆ)

#include <stdio.h>
#include <string.h>

int main()
{
	char get1[100];

	FILE* fp1;
	FILE* fp2;

	fopen_s(&fp1, "text.txt", "r");
	fopen_s(&fp2, "text2.txt", "w");

	printf("cat์„ coffee๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.\n");

	while (!feof(fp1))
	{
		fgets(get1, 100, fp1);
		fputs(get1, fp2);
	}

	fseek(fp2, 9, SEEK_SET);
	fprintf(fp2, "\ncoffee\n");

	fclose(fp1);
	fclose(fp2);

	return 0;
}

 

 

 

 

491p_10๋ฒˆ)

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
	int c[30];
	srand(time(NULL));

	FILE* text;
	FILE* bin;

	for (int i = 0; i < 30; i++)
	{
		c[i] = rand() % 6;
	}

	for (int i = 0; i < 30; i++)
	{
		printf("%d ", c[i]);
	}

	fopen_s(&text, "text_file.txt", "w");
	fopen_s(&bin, "binary_file.bin", "wb");

	for (int i = 0; i < 30; i++)
	{
		fprintf(text, "%d ", c[i]);
		fwrite(&c[i], sizeof(int), 1, bin);
	}

	fclose(text);
	fclose(bin);

	return 0;
}

์ด์ง„ ํŒŒ์ผ์ด ํ…์ŠคํŠธ ํŒŒ์ผ์— ๋น„ํ•ด ํฌ๊ธฐ๊ฐ€ ์ž‘์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

 

491p_11๋ฒˆ)

#include <stdio.h>

int main()
{
	int bin1[30];
	short bin2[30];

	FILE* fp1;
	FILE* fp2;

	fopen_s(&fp1, "binary_file.bin", "rb");
	fopen_s(&fp2, "final.bin", "wb");

	for (int i = 0; i < 30; i++)
	{
		fread(&bin1[i], sizeof(int), 1, fp1);
		bin2[i] = bin1[i];
		fwrite(&bin2[i], sizeof(short), 1, fp2);
	}

	fclose(fp1);
	fclose(fp2);

	return 0;
}

์ด์ง„ ํŒŒ์ผ์ด ์›๋ž˜ ํฌ๊ธฐ์˜ 50%๋กœ ์••์ถ•๋จ์„ ํ™•์ธ

 

 

 

 

491p_12๋ฒˆ)

#include <stdio.h>
#include <string.h>

int main() 
{
    FILE* fp;
    fopen_s(&fp, "db.txt", "a");

    int choose;
    int a;
    int ret;
    char tmp[100];
    char user_input[100];
    char book[100];
    char str[100];

    fclose(fp);

    printf("======================\n");
    printf("1. ์ถ”๊ฐ€\n");
    printf("2. ์ถœ๋ ฅ\n");
    printf("3. ๊ฒ€์ƒ‰\n");
    printf("4. ์ข…๋ฃŒ\n");
    printf("======================\n");

    while (1)
    {
        printf("\n์ •์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์‹œ์˜ค: ");
        scanf_s("%d", &choose);
        getchar();
        printf("\n");

        if (choose == 1)  // ๋„์„œ ์ถ”๊ฐ€
        {
            char user_input[100];
         
            fopen_s(&fp, "db.txt", "a");
            printf("๋„์„œ๋ช…: ");
            rewind(stdin);
            gets_s(user_input, 100);
            fprintf(fp, "๋„์„œ๋ช…: %s\n", user_input);
            fclose(fp);

            fopen_s(&fp, "db.txt", "a");
            printf("์ €์ž: ");
            rewind(stdin);
            gets_s(user_input, 100);
            fprintf(fp, "์ €์ž: %s\n", user_input);
            fclose(fp);

            fopen_s(&fp, "db.txt", "a");
            printf("์ถœํŒ์‚ฌ: ");
            rewind(stdin);
            gets_s(user_input, 100);
            fprintf(fp, "์ถœํŒ์‚ฌ: %s\n", user_input);
            fprintf(fp, "\n");
            fclose(fp);

            printf("\n");
        }
        else if (choose == 2)  // ๋„์„œ ์ถœ๋ ฅ
        {
            fopen_s(&fp, "db.txt", "r");

            while (!feof(fp))
            {
                ret = fgets(str, 100, fp);

                if (ret == 0)
                {
                    break;
                }

                printf("%s", str);
            }

            fclose(fp);
        }
        else if (choose == 3)  // ๋„์„œ ๊ฒ€์ƒ‰
        {
            printf("๋„์„œ๋ช…์„ ์ž…๋ ฅํ•˜์„ธ์š”: ");
            rewind(stdin);
            gets_s(book, 100);
            
            char str3[100] = "๋„์„œ๋ช…: ";
            strcat_s(str3, 100, book);
       
            fopen_s(&fp, "db.txt", "r");

            while (!feof(fp))
            {
                fgets(tmp, 100, fp);

                if (strstr(tmp, str3))
                {
                    printf("%s", tmp);
                    fgets(tmp, 100, fp);

                    printf("%s", tmp);
                    fgets(tmp, 100, fp);

                    printf("%s", tmp);
                    fclose(fp);

                    break;
                }
            }

            fclose(fp);
        }
        else  // ์ข…๋ฃŒ
        {
            printf("\nํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.\n");

            break;
        }
    }

    return 0;
 }