컴파일하면 에러는 0인데 실행이 안되요ㅠㅠ
치킨마루
로직에러라고 하는데 뭐가 문제인지를 모르겠네요 ㅠㅠ질문 요약 :다항식의 곱셈을 짠건데, 아직 곱셈까지만 하고 정렬은 안했어요.
근데 돌아가지가 않네요 ㅠㅠ 수정부턱드려여질문 내용 :소스===========
#include stdio.h
#define MAX_SIZE 101
typedef struct{
float coef; //계수
int expon; //지수
} polynomial;
polynomial terms[MAX_SIZE]= { {2,9},{7,6},{8,3},{6,2},{7,1},{2,8},{6,7},{9,6},{8,2} };
int avail = 0;
void poly_mult(polynomial terms[], int* startD, int* finishD){
int i=0, j=0;
int startA=0, finishA=4, startB=5, finishB=8;//배열[A구간]과배열[B구간]을 곱해서배열[D구간]에 넣을꺼에요
int avail = 9;
*startD=avail;
for (i=0; i=finishA ; i++)
for (j=startB ; j=finishB ; j++){
terms[avail].coef = terms[i].coef * terms[j].coef;
terms[avail++].expon = terms[i].expon+terms[j].expon;
}
*finishD = --avail;
}
void poly_print(polynomial terms[], int* startD, int* finishD){ //오름차순 정렬은 아직 안해놓고출력시킬 생각입니다.
int i=0;
for ( i=*startD ; i=*finishD ; i++){
printf(%d X^ %d +\n, terms[i].coef,terms[i].expon);
}
}
int main(void)
{
int *startD=0, *finishD=0;
poly_mult(terms, startD, finishD);
poly_print(terms, startD, finishD);
return 0;
}
-
눈꽃
수정좀 부탁드릴께요 ㅠㅠ
-
엄마몬
int *startD=0, *finishD=0;
시작 부터가 문제...
int * startD = 0; // int형 포인터 startD를 선언 - 0 ?????????
1. 0을 startD가 지시하는 위치에 넣겠다!
= 말도 안되죠.. 어디를 지시하고 있는지 조차 알 수 없는 상태
2. startD가 null을 지시하도록 (아무것도 지시 하지 않는 상태) 하려 했다
= 그렇다면 for문에서 *startD 을 i값의 초기값으로 한 것에 문제가 됩니다. -
풍란
for ( i=*startD ; i=*finishD ; i++){
*startD, *finishD값이 실제로 어떻게 적용이 될까요..