게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C언어 질문해도 될까요? array끼리 계산하려고합니다.
게시물ID : computer_204564짧은주소 복사하기
작성자 : 토요일오후에
추천 : 0
조회수 : 478회
댓글수 : 3개
등록시간 : 2014/11/23 02:37:39

#include <stdio.h>
#include <math.h>
#define i 4
#define j 4

double point(int ii, int jj);
double sum_u(double(*array)[4][4], double *A, double *B);

void main()

{
 double array[i][j] = { 0 };
 double b[i] = { 0 };
 double E[i][j] = { 0 };
 double E_inv[i][j] = { 0 };



 array[0][0] = 21.; array[0][1] = -3.; array[0][2] = 1.; array[0][3] = 7.;
 array[1][0] = 4.; array[1][1] = 15.; array[1][2] = -2.; array[1][3] = 0.;
 array[2][0] = 1.; array[2][1] = 2.; array[2][2] = 15.; array[2][3] = 1.;
 array[3][0] = 1.; array[3][1] = 6.; array[3][2] = 2.; array[3][3] = 13.;
 b[0] = 9.; b[1] = 33.; b[2] = 8.; b[3] = 41.;


 double n = 3;
 int ii = 0;
 int jj = 0;


 for (ii = 0; ii < n + 1; ii = ii + 1)
 {
  for (jj = 0; jj < n + 1; jj = jj + 1)
  {  
   E_inv[ii][jj] = point(ii, jj);
  }
 }

 sum_u(E, E_inv, array);
 


 printf("E행렬\n");
 for (ii = 0; ii < n + 1; ii = ii + 1)
 {
  for (jj = 0; jj < n + 1; jj = jj + 1)
  {

   printf("%f ", E[ii][jj]);
  }

  printf(" %f\n ", b[ii]);
 }


}


double point(int ii, int jj)
{
 double y = 0;
 
   if (ii == jj)
   {
    y = 1;
   }
   if (ii < jj)
   {
    y = 0;
   }

   return(y);


}

double sum_u(double(*E)[i][j], double (*A)[i][j], double(*B)[i][j])
{

 int ii = 0;
 int jj = 0;
 double y = 0;
 for (ii = 0; ii < 4; ii++)
 {
  for (jj = 0; jj < 4; jj++)
  {
   *E[ii][jj] = *A[ii][jj] + *B[ii][jj];
  }
 }


}



/////////////////////////////////////////////////////////////////////////////////////////

식인데 지금 sum_u라는 sub함수로 배열끼리 함수의 합을 더하려고하는데요

계속 오류가 떠서 질문드립니다. ㅜㅜㅜ

문제가 뭘까요...포인터 오류같은데...


전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호