반응형
구조체 포인터 배열을 선언하고 동적 할당하여 좀더 데이터를 효율적으로 써보고자...(?) 노력하는 코드를 작성해보았다.
#include<stdio.h>
#include<stdlib.h>
typedef struct complex{
float comnum1;
float comnum2;
} Complex;
void AddComplexNumber(Complex * comnum)
{
double real=comnum[0].comnum1+comnum[1].comnum1;
double image=comnum[0].comnum2+comnum[1].comnum2;
printf("added real number : %g, added imagenary number : %g\n",real,image);
}
void MulComplexNumber(Complex * comnum)
{
double real=((comnum[0].comnum1*comnum[1].comnum1) - (real=comnum[0].comnum2*comnum[1].comnum2));
double image=((comnum[0].comnum2*comnum[1].comnum1) + (comnum[0].comnum1*comnum[1].comnum2));
printf("multiplied real number : %g, multiplied imagenary number : %g\n",real,image);
}
int main(void)
{
int index=2; //the number of complex number
Complex * comnum = (Complex*)malloc(sizeof(Complex)*index);
fputs("enter first complex number : (real number first, imaginary number second",stdout);
scanf("%f %f",&comnum[0].comnum1,&comnum[0].comnum2);
fputs("enter second complex number : (real number first, imaginary number second",stdout);
scanf("%f %f",&comnum[1].comnum1,&comnum[1].comnum2);
AddComplexNumber(comnum);
MulComplexNumber(comnum);
free(comnum);
return 0;
}
반응형
'개발 공부 > C언어' 카테고리의 다른 글
#4 C언어 main에서 return 0, return -1 의 뜻 (0) | 2022.07.31 |
---|---|
#3 C언어 재귀함수를 쉽게 풀어서 설명해보았습니다. (0) | 2022.07.31 |
#2 C언어 double과 float의 서식문자 %lf, %f 뭘 사용해야 하는걸까? (0) | 2022.07.31 |
#1 C언어의 루트와 지수함수 사용하는 법 <math.h> (0) | 2022.07.31 |
[열혈 C 프로그래밍] 도전! 프로그래밍4, 도전2번 정답 (0) | 2022.07.30 |
댓글