C언어 질문입니다

조회수 75회

양수가 입력되면 a리스트, b리스트로 각각 저장하는 프로그램 작성.

     (조건1: 두 수의 합이 0이면, 전체 입력받은 정수들의 합계를 출력한다.)

     (조건2:  0 이 입력되면 해당 정수 리스트의 합계를 출력한다.)

     (조건3: -1 이 입력되면 해당 정수 리스트를 출력한다.)

     (조건4: 두 수 중 하나라도 -1보다 작은수가 입력되면 프로그램을 종료한다.)

            예1) a는 -2이고, b는 2인 경우 : 전체 정수의 합계를 출력하고, a/b 모두 저장하지 않는다. 

            예2) a는 양수이고, b는 0인 경우 : a는 저장하고, b 리스트의 합계 출력한다. 

            예3) a는 -1이고, b는 양수인 경우 : b는 저장하고, a 리스트를 출력한다.


               입력예시) 1  2  3  4  5  6  -1  7  8  9  -1  10  0  -1  1  -1  11  -4 

               출력예시) a리스트(3) : 1 3 5

                          a리스트(4) : 1 3 5 8

                          a합계(4) : 17

                          b리스트(6) : 2 4 6 7 9 10

                          전체합계(10) : 55

include

include

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) { int nMax = 20; int nNow = 0; int* p = (int* )malloc(sizeof(int)* nMax); int* k = (int* )malloc(sizeof(int)* nMax); int nSum, dSum;

int a,b,c; while(1){ printf("정수 2개 입력: "); scanf("%d %d", &a, &b);

  if(a+b ==0){
     printf("전체합계(%d) : %d ",nNow ,nSum);
     continue;
  }

  if(a ==0){
     printf("a 합계(%d): ", nNow );
        printf("%d ", dSum);
     printf("\n");
     continue;
  }
  if(b==0){
     printf("b 합계(%d) :", nNow);
        printf("%d ", c);
     printf("\n");
     continue;
  }

  if(a == -1){
     printf("정수 리스트(%d) :", nNow);
        for(int n =0; n<nNow; n++)
           printf("%d ", p[n]);
     printf("\n");
     continue;
  }
  if(b == -1){
     printf("정수 리스트(%d) :", nNow);
        for(int n =0; n<nNow; n++)
           printf("%d ", k[n]);
     printf("\n");
     continue;
  }

  if(a <-1)
     break;
  if(b<-1)
     break;

  if(nNow >= nMax){
     nMax = nMax + 10;
     p = (int* )realloc(p, sizeof(int)* nMax); 
     k = (int* )realloc(k, sizeof(int)* nMax);
  }
  c += b;
  dSum += a;
  nSum == dSum;
  nSum += b;
  p[nNow] = a;
  k[nNow] = b;
  nNow++;

}

return 0; }

  • 합계값에서 막히네요 ㅠ alslkkdd 2021.4.27 23:50

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.