반응형
01 (4)
4*10*20 = 800
02 (4)
1000 + 4* 10 = 1040
03 (2)
(1) 40 (2) 80 (3) 40 (4) 40
04
int main(){
int two[10];
for(int i=0; i<10;i++){
two[i]=1;
}
for(int j=1;j<10;j++){
two[j] = two[j-1]*2;
}
}
05
struct person{
char name[10];
int age;
float wage;
}
06
typedef struct{
float real;
float imaginary;
}complex;
complex c1,c2;
07
Complex complex_add(Complex a, Complex b){
Complex c;
c.real = a.real + b.real;
c.imaginary = a.imaginary + b. imaginary;
return c;
}
08 , 10
#include <stdio.h>
void insert(int array[],int loc, int value,int items){
for(int i=items; i>=loc; i--){
array[i] = array[i-1];
}
array[loc-1]=value;
items++;
}
void delete(int array[],int loc,int items){
for(int i=loc; i<=items;i++){
array[i-1] = array[i];
}
items--;
}
int main(){
int arr[9] = {1,2,3,4,5,6,7,8};
insert(arr,3,11,8);
for(int i=0;i<9;i++){
printf("%d ",arr[i]);
}
printf("\n");
delete(arr,3,9);
for(int i=0;i<8;i++){
printf("%d ",arr[i]);
}
}
items를 매개변수에 두지 않고 다른 방법으로
items도 값이 추가될 때마다 변하게 하고 싶어서
int item=sizeof(array)/sizeof(int)를 시도했지만
함수의 매개변수로 받은 배열은 포인터를 넘겨받은 거여서 크기를 구할 수가 없었다..
09 O(n)
11 O(n)
12
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct test{
int a;
char words[20];
}Test;
int main(){
Test* t;
t = (Test*)malloc(sizeof(Test));
if(t==NULL){
fprintf(stderr,"널포인터 오류");
exit(1);
}
t->a = 100;
strcpy(t->words,"just testing");
printf("%d이랑 %s\n",t->a,t->words);
free(t);
return 0;
}
'CS > Data Structure' 카테고리의 다른 글
[C언어로 쉽게 풀어쓴 자료구조] Chapter4. 스택 (2) (1) | 2023.10.24 |
---|---|
[C언어로 쉽게 풀어쓴 자료구조] Chapter4. 스택 (1) (1) | 2023.10.22 |
[C언어로 쉽게 풀어쓴 자료구조] 연습문제 2강 (0) | 2023.10.21 |
[C언어로 쉽게 풀어쓴 자료구조] 연습문제 1강 (0) | 2023.10.21 |
[C언어로 쉽게 풀어쓴 자료구조] Chapter3. 배열, 구조체, 포인터 (2) (0) | 2023.10.21 |