ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C언어 파일 입출력, 구조체
    C언어 2023. 9. 25. 15:57
    728x90
    반응형
    SMALL
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #pragma warning(disable:4996)
    
    int main()
    {
    	int arr[5][5] = { {0} };
    	//1.3개의 폭탄을 수동으로 심습니다.
    	//1.1)scanf로 두개의 좌표 값을 입력받고
    	//1.2)입력받은 좌표에 폭탄유무 확인
    	//2.난수를 사용하여 입력된 갯수만큼 자동으로 폭탄설치
    	int boombx = 0;
    	int boomby = 0;
    	int cnt = 0;
    
    	for (int i = 0; i < 5; i++)
    	{
    		for (int x = 0; x < 5; x++)
    		{
    			printf("%d", arr[i][x]);
    		}
    		printf("\n");
    	}
    
    	//3개의 폭탄을 수동으로 심습니다.
    
    	printf("폭탄을 세개 심습니다.좌표를 입력하세요\n");
    	for (int i = 0; i < 3; i++)
    	{
    		scanf("%d %d", &boombx, &boomby);
    		
    
    		if (arr[boombx][boomby] == 1)
    		{
    			printf("해당 좌표값은 이미 있습니다.");
    			i--;
    		}
    		else
    		{
    			arr[boombx][boomby] = 1;
    			
    		}
    		arr[boombx][boomby] = 1;
    	}
    	
    
    	
    	arr[boombx][boomby] = 1;
    
    	for (int i = 0; i < 5; i++)
    	{
    		for (int x = 0; x < 5; x++)
    		{
    			printf("%d", arr[i][x]);
    		}
    		printf("\n");
    	}
    
    	return 0;
    }
    
    ///////////////////////////////////////////////////
    폭탄 세개 랜덤으로 심기
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #pragma warning(disable:4996)
    
    int main()
    {
    	int arr[5][5] = { {0} };
    	//1.3개의 폭탄을 수동으로 심습니다.
    	//1.1)scanf로 두개의 좌표 값을 입력받고
    	//1.2)입력받은 좌표에 폭탄유무 확인
    	//2.난수를 사용하여 입력된 갯수만큼 자동으로 폭탄설치
    	int boombx = 0;
    	int boomby = 0;
    	int cnt = 0;
    	srand(time(NULL));
    	int random = 0;
    
    	for (int i = 0; i < 5; i++)
    	{
    		for (int x = 0; x < 5; x++)
    		{
    			printf("%d", arr[i][x]);
    		}
    		printf("\n");
    	}
    
    
    
    	printf("폭탄을 세개를 심습니다.좌표를 입력하세요\n");
    	for (int i = 0; i < 3; i++)
    	{
    
    		boombx = rand() % 5;
    		boomby = rand() % 5;
    
    		if (arr[boombx][boomby] == 1)
    		{
    			printf("해당 좌표값은 이미 있습니다.");
    			i--;
    		}
    		else
    		{
    			arr[boombx][boomby] = 1;
    
    		}
    		arr[boombx][boomby] = 1;
    	}
    
    
    
    	arr[boombx][boomby] = 1;
    
    	for (int i = 0; i < 5; i++)
    	{
    		for (int x = 0; x < 5; x++)
    		{
    			printf("%d", arr[i][x]);
    		}
    		printf("\n");
    	}
    
    
    
    	return 0;
    }
    
    ////////////////////////////////////////////////////////
    
    #include <stdio.h>
    #include <stdlib.h>   //rand()함수 포함 라이브러리
    #include <time.h>     //time()함수 포함 라이브러리
    #pragma warning (disable:4996)
    
    //1. 3개의 폭탄을 수동으로 심습니다.
    //2. scanf로 두개의 좌표 값을 입력받고
    //3. 입력받은 좌표에 폭탄유무 확인
    //4. 난수를 사용하여 입력된 갯수만큼 자동으로 출력
    
    int main()
    {
    	int arr[5][5] = { {0} };
    	int bbbx = 0;
    	int bbby = 0;
    	srand(time(NULL));
    	int random = 0;
    
    
    	for (int i = 0; i < 5; i++)
    	{
    		for (int x = 0; x < 5; x++)
    		{
    			printf("%d", arr[i][x]);
    		}
    		printf("\n");
    	}
    
    
    	printf("폭탄을 세개 심습니다.");
    	
    	for (int i = 0; i < 3; i++)
    	{
    		bbbx = rand() % 5;
    		bbby = rand() % 5;
    
    		if (arr[bbbx][bbby] == 1)
    		{
    			printf("이미 있는 좌표 값 입니다.");
    			i--;
    		}
    		else
    		{
    			arr[bbbx][bbby] = 1;
    		}
    		arr[bbbx][bbby] = 1;
    
    	}
    
    	for (int i = 0; i < 5; i++)
    	{
    		for (int x = 0; x < 5; x++)
    		{
    			printf("%d", arr[i][x]);
    		}
    		printf("\n");
    	}
    
    	return 0;
    }
    
    //////////////////////////////////
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #pragma warning (disable:4996)
    
    //3개의 폭탄을 랜덤으로 심기
    
    int main()
    {
    	int arr[10][10] = { {0} };
    	int bbx = 0;
    	int bby = 0;
    
    	for (int i = 0; i < 10; i++)
    	{
    		for (int x = 0; x < 10; x++)
    		{
    			printf("%d ", arr[i][x]);
    		}
    		printf("\n\n");
    	}
    
    	for (int i = 0; i < 3; i++)
    	{
    		bbx = rand() % 10;
    		bby = rand() % 10;
    		
    		if (arr[bbx][bby] == 1)
    		{
    			//printf("이미 있는 좌표입니다.\n");
    			i--;
    		}
    		else
    		{
    			arr[bbx][bby] = 1;
    		}
    	}
    
    
    	for (int i = 0; i < 10; i++)
    	{
    		for (int x = 0; x < 10; x++)
    		{
    			printf("%d ", arr[i][x]);
    		}
    		printf("\n");
    	}
    
    	
    
    return 0;
    
    }
    
    ///////////////////////////////////////////////////////////////////////
    
    #include <stdio.h>
    #pragma warning(disable:4996)
    
    int main()
    {
    	FILE* fp = fopen("test.txt", "wt");
    	/*if (fp=NULL)
    	{
    		puts("파일오픈 실패!");
    		return -1;
    	}*/
    	fprintf(fp, "%d", 100);
    	fputs("testtest", fp);
    	fputc('A', fp);
    	fputc('B', fp);
    	fputc('C', fp);
    
    	fclose(fp);
    
    	return 0;
    }
    
    //////////////////////////////////////////////////
    
    #include <stdio.h>
    #pragma warning(disable:4996)
    
    int main()
    {
    	char name[10];
    	char sex;
    	int age;
    
    	int ret;
    	FILE* fp = fopen("friend.txt", "rt");
    
    	while (1)
    	{
    		ret = fscanf(fp, "%s %c %d", name, &sex, &age);
    		if (ret==EOF)
    		{
    			break;
    		}
    		printf("%s %c %d\n", name, sex, age);
    	}
    	return 0;
    }
    
    ///////////////////////////////////////
    
    #include <stdio.h>
    #include <string.h>
    #define NAME_LEN 30
    #define PID_LEN 15
    #pragma warning(disable:4996)
    
    struct __person
    {
    	char name[NAME_LEN];
    	char ID[PID_LEN];
    	unsigned int age;
    };
    typedef struct __person person;
    
    void ShowPersonData(person *ptr)
    {
    	printf("이름: %s \n", (*ptr).name);
    	printf("주민등록번호: %s \n", (*ptr).ID);
    	printf("나이: %u \n", ptr->age);
    }
    int main()
    {
    	person jongsoo = { "한종수","900218-1012589",20 };
    	person sungeun = { "이성은","910218-1012589",19 };
    
    	ShowPersonData(&jongsoo);
    	ShowPersonData(&sungeun);
    
    	return 0;
    }
    
    ///////////////////////////////////////////////////
    
    
    #include <stdio.h>
    #define ARRY_LEN 3
    #define NAME_LEN 30
    #define PID_LEN 15
    
    typedef struct __person
    {
    	char name[NAME_LEN];
    	char ID[PID_LEN];
    	unsigned int age;
    }person;
    
    void ShowPersonData(person* ptr);
    
    int main()
    {
    	int i;
    	person personArr[ARRY_LEN] = {
    		{"한종수","900218-1012589",20},
    		{"이성은","910218-1012589",19},
    		{"윤지민","930218-1012589",17}
    	};
    
    	for (int i = 0; i < ARRY_LEN; i++)
    	
    		ShowPersonData(&personArr[i]);
    	
    	return 0;
    }
    
    void ShowPersonData(person* ptr)
    {
    	printf("이름: %s\n", (*ptr).name);
    	printf("주민등록 번호: %s\n", (*ptr).ID);
    	printf("나이: %u\n\n", ptr->age);
    }
    
    /////////////////////////////////////////////////
    
    #include <stdio.h>
    #define PI 3.14
    
    typedef struct __point
    {
    	double xPos;
    	double yPos;
    }point;
    
    typedef struct __circle
    {
    	point center;
    	double rad;
    }circle;
    
    void ShowCircleInfo(const circle* ptr)
    {
    	printf("원의 중심:[%g, %g]\n",
    		(ptr->center).xPos, (ptr->center).yPos);
    	printf("원의 넓이: %g \n",
    		(ptr->rad) * (ptr->rad) * PI);
    }
    
    int main()
    {
    	circle cl = {
    		{1.1,2.2},
    		2.5
    	};
    
    	ShowCircleInfo(&cl);
    	return 0;
    }
    
    //////////////////////////////////////////////////
    
    #include <stdio.h>
    #include<stdlib.h>
    #pragma warning(disable:4996)
    
    typedef struct
    {
    	char name[10];
    	int age;
    }Data1;
    
    int main()
    {
    	Data1* dt = malloc(sizeof(dt) * 5);
    	(*(dt + 1)).age = 10;
    	(dt + 1)->age = 10;
    	printf("%d", (dt + 1)->age);
    
    	return 0;
    }
    
    ///////////////////////////////////////////////////
    728x90
    반응형
    LIST

    'C언어' 카테고리의 다른 글

    C언어 프로젝트 준비  (0) 2023.09.27
    C언어 파일나누기,명함만들기,구구단,계산기  (2) 2023.09.26
    C언어  (0) 2023.09.22
    C언어 지뢰찾기  (0) 2023.09.22
    C언어 6x6 안에 4x4 넣기  (0) 2023.09.22
Designed by Tistory.