c·c++/c 프로그래밍

빠진 수 찾기

바로이순간 2012. 8. 23. 14:15

 C언어 프로그램 짜는건데

 1~100까지 숫자중 누락된 숫자 하나를 찾아 내는겁니다.

- 지식인의 질문 중에서 - 

-----------------------------------------------------------


#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int main() {

    int data[100]={0,};

    int i, j, x, temp;

    srand(time(NULL));

    for(i=0;i<100;++i) data[i]=i+1;

    // 1부터 100까지의 자료를 섞어 준다.

    for(i=0;i<100;++i) {

        x=rand()%100;

        temp=data[i];data[i]=data[x];data[x]=temp;

    }

    for(i=0;i<100;++i) printf("%3d ", data[i]);

    printf("\n");

    // 한개를 삭제한다.

    data[99]=0;

    // 99개의 자료를 정렬한다.

    for(i=0;i<98;++i) {

        x=i;

        for(j=i+1;j<99;++j) if(data[j]<data[x]) x=j;

        temp=data[i];data[i]=data[x];data[x]=temp;

    }

    for(i=0;i<99;++i) printf("%3d ", data[i]);

    printf("\n");

    // 한개의 빈 자료를 찾는다.

    for(i=0;i<98;++i)

        if(data[i]+1<data[i+1]) break;

    printf("빈자료는 %d입니다.", i+2);


    return 0;

}