Η ΓΛΩΣΣΑ C - ΜΑΘΗΜΑ 8 - ΔΕΙΚΤΕΣ (ΕΚΤΥΠΩΣΗ)
-
Upload
dimitris-psounis -
Category
Education
-
view
134 -
download
7
Transcript of Η ΓΛΩΣΣΑ C - ΜΑΘΗΜΑ 8 - ΔΕΙΚΤΕΣ (ΕΚΤΥΠΩΣΗ)
H ������ C
���� 8:
� ��� �
����� �����
� �� �� �� ���������. �������
1. � �� � � �� � �����
2. � � �� � � ������
3. ������ ������
4. ���� �� ���� �� ������ (� �������� &)
5. ���� �� ���� ��� ������ ( �������� *)
6. ��������� ������ ������
�. ������� ��� ������
1. � � � ��� ����� ���� �������
2. �� ������ ��� ����� ��� ��
3. ��� ����� �����!
4. "� �#� � $�% ����� ��� ����%��� �� �����
&. ������� ��� $���������
1. �� ������� ������ �� $�������
2. �� ������� ������ � �� $������� ��� ����
3. �� ������� ������ � �� $������� �����' ���
�. ������������
1. �� ������� ����� �� ����� �� ��������
2. � $�� ��� NULL
��������
����������� ���������������������������
A. � ��� �1. � ��� ��� ��� �!�"��
����������� ���������������������������
� #��� �$ $ � ����� � � ��%��� � !�� �� ��!��&" �� ��� " '�� ���!���.
� � �� �� ��"� �'� (� � �����) ���"'!!�" ����� �� %����"��� �� �� "��
�� ������ �(���� ������ �"� $ $�'�&�.
� )�� �(��� ������ �"� ���� 1 byte ($ �$� 8 bits).
� ���� �'��� �� ����� �� �����"�� ��� �(�� ������ �"�, '� � '���
���!�&��"���� ��*&� ����� (��� '! ��� $� ����" ���).
� #�"� ����� ��� ��'� � �� '��� !�� �� �� �� ���� � ��, �� ��� '�� '���
���!�&��"���� �����, �� ����� �� '� � '! ��� 1 byte:
1Byte
0
…
1 2 1000 1001
…
10000 10001
…
2x109
1Byte 1Byte 1Byte 1Byte 1Byte 1Byte 1Byte
A. � ��� �1. � ��� ��� ��� �!�"��
����������� ���������������������������
� +�$� ��� �� "�����" '� � ��� $��� �� �(�� ������ �"� ��, �(�.
� -��� ���� ���� �� �� "� � �� "�����", $ " � ��� � �(��� �� ��� !�� ���
��, �'� �� "�����"�.
� #�"� �� !�� ����$ �!� main �� � �� "�����" ��� '��� !��. � ('"�& ����
f), ��� � ��! &���"��� �� ����" � ("� ��� "�����" �� '� � ��� �(�� �� "��
��.
� / �(��� ��� $ " � ��� ���� ��� �� !� �� !�� �� �&�'" � ���� �� '� ��, �'�
(�� ����,'� � ���� ������0 ��� ��� �� �����!��� "�"��, �� ��! &���"�� �. �.)
…
1000 1001
…
15448 15449
…
1002
(!� � ��� f (!� � ��� main
…… …
A. � ��� �1. � ��� ��� ��� �!�"��
���������� ���������������������������
� -��� $ (��� ��, �'� " �� "�����", � ��! &���"��� �� '! � ������� ��� ���
�� �� �(�� �� "�����"� !�� �� ����� �" � �� ��, ��.
� #�"� �� �.�. f $ (� � "��� �(�� $� &"� ��, �(� �� $�� ��'��� � ��, �'�, '"�&
�� x ��� �� y (� &��� ��� �� ��'���� ��, �� $ " � � 4 bytes ��&� "�0��"� "
���!�� �� ���)
� 1�� ����� �� ��� �� ���� *��
…
1014 1015
…
(!� � ��� f (!� � ��� main
… …
1016 1017 1057 1058 1059 1060
…
x y
… ……
A. � ��� �1. � ��� ��� ��� �!�"��
!���������� ���������������������������
� #�"� �� !��.�� x=1 ��� y=5 ��� '� �����(�"� "�� "(� �� f, ��� ����� ������
"��� ��, �'� �� ����"���� � ��'�.
� / ������ ������ �"� "�� $��$��� "�"�� �&� ����(� ���(� $ � �� �$��%'� � ����
!��%�� �� ���!��� ��.
� ����.�0����� ���� �,����"� ��� �� ��, �� ��� � �� �����"� � � ��&� ��� $��
$ $�'��: ��� ���� $ $�'�&� �� (!�� �� *'��� ��"� bytes $ " � � "�� ��) ��� ��
��(�� byte "�� ����� ���� ����� �'�. �.�. ��� �� x �� *'�& ��� ���� ��'���� ��� �� 1�
byte �� ���� �� 1014, ��� ���( �� *�!& ��� �� ���� ����� �'� "�� bytes 1014-1017.
…
1014 1015
…
(!� � ��� f (!� � ��� main
… …
1016 1017 1057 1058 1059 1060
…
x y
… …… 1 5
A. � ��� �2. � #����� ��� � ���
"���������� ���������������������������
� #�"� �����, ����� ��� �� ��'� � �� '��� "�� �� � ��, ���� ��� ��� ��, �� '� �
'��� �(�� ������ �"� (�"�� �� '! ��� �� ��, ��� " bytes) ���!�&��"���� �
$� ����" ��� ��� 1�� byte ��� ���� $ " � �.
� ��� �� "��!� �&� ��� $� ����" ��� ���� '��� ������, ��� � �� ���� �&��"� �
"�� �����"$���� � �� ������ "�� C. 2�� !�� ����$ �!� ����� �� $ ("�� ��
��, �� "�� ����� �� ����� ��� �� $� ����" ��� ��� � � ��, ���!
…
1014
…
(!� � ��� f (!� � ��� main
… …
1057
…
x y
… …… 1 5
A. � ��� �2. � #����� ��� � ���
����������� ���������������������������
� ��� �(� ����� �� $ ("�� �� ��, �� ('"�& ���� ptr) ��� �� ����� �"��
�.�. �� $� ����" �� ��, ��� x.
� ���� ��, ��, ����� ����� � � &� ��� �� $� ����" ��� � &� ��, �(�
����0 ��� $ ����:
� � �� ����� ��� � $ ���� ptr '� � &� ��� �� $� ����" �� ��, ��� x. 3� ' !�� ��
�!� ����, ��� � $ ���� ptr $ ��� � "�� ��, �� x
…
1014
…
(!� � ��� f
(!� � ��� main
… …
1057
…
)���%���� x ������� ptr
… …… 1 1014
A. � ��� �3. /��"�� � ���
#���������� ���������������������������
� #��� $ ���� $ (� ��� �� ��� � $� &"�:
� � (��� '��� $ ��� ���� «/���_� ���» ��� �� $ ��� � " �� ��, �� �����
$ $�'�&� «1����_� $�'�&�»
� ����$ �!���:
� +$( $ (��� '��� $ ��� " ��'���� ���� p.
� +$( $ (��� '��� $ ��� " double ���� ptr
� �����"�("� ��� '��� $ ���� ���� ��� '��� ����� $ $�'�&�. � �� �$���� ����� ��� ��
��, �'� ��� �� ����� � � �� ���� $� ����" �� ���.
� / ����� $ $�'�&� "�,� ��� ���� (int *) ��� (double *) ����"����� "��� $ (" �� ��� �$� .
�����_������� * ���_������
int *p;
double *ptr;
A. � ��� �4. ���$�" 1��� " � ���
$%���������� ���������������������������
� ��� �� '� � ��� '��� $ ���� ��'� � �� ��� "�"� ��"�� �� ��, ��, � ��&� ' ��
��� ,� �� �� $ ��� � "�� ��, ��. ���� !�� ��� ��� *�� �����:
� / � "��� & (�� ��� $��,�0�� «$� ����" ���») ���� � ���"�� ��� �� ��, ��
��� �� ��"��'% � �� $� ����" ���.
� 2��:
� �� x ���� ����� �'� �.�. "�� $� ����" 10333,
� ��� ��� &x ($� ����" ��� x) ���� 10333,
� ��� ��� �� p �� �� ��� � ���� "� ���� 10333.
int x;int *p;
p=&x; // ���� ��� ���� p �� �� ��� ���� x.
A. � ��� �5. ���$�" 1��� '"& � ��� (/ � "��� *)
$$���������� ���������������������������
� / � "��� * (��� ����0 ��� � "��� ' "� $� ����"��$��"�) '� � $�� ���" ��:
� +�$� �� ��(� ��� ���� �� $ ("�� �� ��, �� ����� $ ���.
� � $ �� � ���" ���� *��:
� �� " �� ��� �, ,� �� �� * ���"�� ��� '��� $ ���, ��� ���% ���"� "��
��, �� ��� $ ��� � � $ ����.
� 4 '��� �� ����$ �!�:
� � �� ��� ���� �� ����$ �!� ���� �,����"� ��� '��� $�� ������� !�� �� '���
���",�" "�� ��, �� x:
� �� �� ��� �� ���� �� x (� " ���",�")
� �'"& ��� $ ��� ��� $ ��� � "�� x (' " ���",�")
int x;int *p;
p=&x;
*p=5; //� �������� ��� ������� �� *p (��� �� x) ������� ��� ��� 5
A. � ��� �6. ����$ �!� 5��"� � ���(�
$����������� ���������������������������
� � ��! &���"� , �� '"� ��� �������� �� ���!���:
/* pointers.c: Deixnei tin vasiki xrisi twn deiktwn */
#include <stdio.h>
main(){
int x;int *ptr;
ptr=&x;
x=5;printf("x=%d\t *ptr=%d\t &x=%d\t ptr=%d",x,*ptr,&x,ptr);*ptr=8;printf("\nx=%d\t *ptr=%d\t &x=%d\t ptr=%d",x,*ptr,&x,ptr);x=9;printf("\nx=%d\t *ptr=%d\t &x=%d\t ptr=%d",x,*ptr,&x,ptr);
}
4. � ��� � ��� ����� �1. 1� -��� ��� ������ ���� � ����
$����������� ���������������������������
� /� $ ��� � ���� �� � ���"��� " "��$��"� ���� ����� �!
� ���� "�,��� � $���� *’ ���"�� �� ���� ��� ������ ���� '��� $ ���� ���� $ $�'�&�
��� ���� $ $�'�&� ��� ������.
� �"��"� ���� '��� $ ���� ��� $ � ����� �� � �*�� �� ��� ���.
� ������ �&� �� ���"�� '��� $ ��� �� $ ��� � "�� ���� ��� ������ ��� *��
�����:
� / $ ���� �� $ ��� � "��� ��(�� ��'���� ����� ���
������.
� / $ ���� ptr ��� � �� � �* �!
� � �("� $( ��� �� �����"� �� ,� �� ��� $ ��� �� $ ��� � "�� ��(�� "���� ��
��� ������ ��� �� ��� �
� �"��"� ���� "������ �� !�&��0�� ��� ��(�� �����.
ptr=&pinakas[0]
int pinakas[100];int *ptr;
ptr=pinakas;
int pinakas[100];int *ptr;
ptr=&pinakas[0];
4. � ��� � ��� ����� �2. ������ �" ��� ������ "� ���
$����������� ���������������������������
� ��� ��� 8, �$� ��� �� "���� �� ��� ������ ����� ������ " $��$����'� �'" �� ���.
� #%��" (�� �� �� $����"�("�� ��� � ��������.
� +�$� ��� �� $� &":
� �����! ���� '��� ������� 4 $��$����(� �'" &� "�� ��
� ��&��0�� � '�� ��� &pin[0],&pin[1],&pin[2],&pin[3] ���� �� $� ����" �� ��� �&�
4 ��, �(� ��� ������.
� 1� ���!��� �� �� �� $��%�� ��� $ ��� � ��� ���&� �� ��, �'� ���'�
����� ������ " $��$����'� �'" �� ���.
int pin[4];
(!� � ��� ���������
pin[0] pin[1] pin[2]
…
pin[3]
…
4. � ��� � ��� ����� �2. ������ �" ��� ������ "� ���
$ ���������� ���������������������������
� � ��! &���"� , �� '"� ��� ��"� �� ���!���:
/* matrix_pointers.c: Deixnei oti oi theseis mnimis enos pinaka einaidiadoxikes */
#include <stdio.h>
#define N 4
main(){
int pin[N];int i;
for (i=0; i<N; i++)printf("\nStoixeio:%d, Diefthinsi Thesis Mnimis: %d",i, &pin[i]);
}
4. � ��� � ��� ����� �3. �������� � ���(�
$!���������� ���������������������������
� � !� ���"���. /� $ ��� � '���� �� �$���� � �������� '�"� ("� �� $�� ���� ���$�����
" "��$��"� ���� ����� �:
� #"�& �� ���!���
� � ��� �:
� � � ��*�� � �� ��� ��� $ ��� ���� 1!
� � � ��*�� � �� ��� ��� $ ��� ���� ��"� bytes �"� ���� ��� � ����� $ $�'�&� ���
$ ��� (!�� ��'����: ���� 4!).
� +�( ��� �:
� � �(� � �� ��� ��� $ ��� ���� ��"� bytes �"� ���� ��� � ����� $ $�'�&� ��� $ ���
(!�� ��'����: ���� 4!).
int pinakas[100];int *ptr;
ptr=pinakas;
ptr--;
ptr++;
4. � ��� � ��� ����� �3. �������� � ���(�
$"���������� ���������������������������
� 1� �������& ���!��� $ ��� � �&� ����� �� $����'*�� �� "���� �� ��� ������ '"&
��� ,������� $ ��� ��� ��� ��’ �� ���!/* pointer_calc.c: Pws exoume prosvasi sta stoixeia enos pinaka mesw deikti */
#include <stdio.h>
#define N 10
main(){
int pin[N];int i;int *ptr;
ptr=pin;for (i=0; i<N; i++){
printf("\nStoixeio:%d, Diefthinsi Thesis Mnimis: %d",i, ptr);ptr++;
}}
4. � ��� � ��� ����� �3. �������� � ���(�
$����������� ���������������������������
� ��� �� (�� ��� � �� � %��� ��� ���"��, !���� �� ����� ���",�" "�� "���� �� ���
������ ����� ��� �����!
� ��!�� �� �&� �� $�� ���!����� ���"� � %���!'� ����� �� �$������.
� �� $�� �&� '�� ��� ����$ �!�:
� � ��� � ptr+=2 ����� �� ��*�" � �� ��� �� ptr ���� 2 x (�� '! ��� ��� double),
��� �� ��*�" � � $� ����" ���� 16, �%�� �� double ��, �� $ " � � 8 bytes.
� � �� �� �'��� �� ��' "� ���(� �&� ��� (� � $ ���� ptr �� $ ��� � "�� "���� ��pinakas[2].
double pinakas[100];double *ptr;
ptr=pinakas;ptr+=2;
4. � ��� � ��� ����� �4. 6"�$����� ��,� �"�� !�� �� ���",�" " ������
$#���������� ���������������������������
� � ,�" �� �������� $ ���(�, ����"��":
� ���� � �� *!� � &� *��:
� 1� (array+2) $�� � �� $� ����" ��� 3�� "���� ��� ��� ������.
� 2�� �� * ���"��, �� $�� � �� ��� ��� 3�� "���� ��� ��� ������.
� #�"� !�� ����$ �!� � ,�����:
� ��� � �� !��% � �"�$����:
*(array+2)
for (i=0; i<N; i++)printf("%d",array[i]);
for (i=0; i<N; i++)printf("%d",*(array+i));
�. � ��� � ��� �������" ��1. ����'� �" � ��� " ������"
�%���������� ���������������������������
� ��� � "��!� ��� '��� $ ���� ��� � �� �$&� � "�� �� ��, �� ("�� �����
����� ������ $� ����" �� ��, �(�), '��� ��� $����&� �� ��� � ��"�� &� ���"�
" �� "�����".
� �.�. 1� ��� ���� ��&������ "�����"�:
� �'� ��� &� ���"��� $�� ���!���:
� #��� $ ��� " ��'���� (�� p) ��� '��� ��'���� (�� x)
� ���� � , ,��&� ��� ��� �� "�����" �� ��"���% � '��� $ ���� " �� ��, ��. 1�
��&������ ��� �'����� "�����"� �� ����:
� -��� "�� "(� �� "�����"� �� ���0�� ��� ��"��'% ��� '��� $ ���� " ��'����
��, ��.
� ��� �$��%'� � ����;
� ��7� �/��! 1� �&� � ��� �� ��, �� ('"& ��, ��� � '"& $ ���) ���� ���
��� ��� "�����'� ���!�����"���'� � ����'� �� C!
int func(int *p, int x)
int *func2(float y)
�. � ��� � ��� �������" ��2. ����'� �" /��"���� " ������" �'"& 1���
�$���������� ���������������������������
� ��� ��� 6 «�������" ��», �$� ��� ��� "�����" '� � ��� $��� �� �(��
��, �(� "�� ��.
� �� ��"�� !�� �� ����� ��� �$���� � ���'� '�� �� � ���!���.
/*byvalue.c: Perasma orismatwn mesw timis */#include <stdio.h>
void swap(int a,int b);
main(){int a=5,b=10;printf("\nMain: a=%d,b=%d",a,b);swap(a,b);printf("\nMain: a=%d,b=%d",a,b);
}
void swap(int a, int b){int k;k=a;a=b;b=k;printf("\nSwap: a=%d,b=%d",a,b);
}
�. � ��� � ��� �������" ��2. ����'� �" /��"���� " ������" �'"& 1���
������������ ���������������������������
� �� ����� �&� $�� � � �� ���!��� ����.
� ���� �� � �" �� "�����"� swap, �� ��, �'� a ��� b '���� ��� � ��� ��'� a=5 ���
b=10.
� ��� �(� ���� !�� ��� � �" �� swap, �� ���"��� a, ��� b �� "�����"� swap '����
����"����� ��'� 5 ��� 10.
� � ����� �� ��� ����:
� �%�� �� "���� �� ��� '� �� swap, � �0��� �� ��'� �&� a ��� b "�� swap, � �
� �$� ���'� ���� �����'� ��, �'� "�� swap ��� �&� a,b "�� main $ � � �0 �!
� � ����� �� ��� ����:
a b
…
(!� � ��� main
5
(!� � ��� swap
a b
510 10
a b
…
(!� � ��� main
5
(!� � ��� swap
a b
1010 5
�. � ��� � ��� �������" ��2. ����'� �" /��"���� " ������" �'"& 1���
������������ ���������������������������
� ��������, ���� � ��� ���"��� '"& ��, �(�, �� � �!'� ��� !������� "��� ��, �'�
��� $��� � ��� &� ���"���, $ � �� *��� ������ �� �%�"������ ���� � ' !��� ���
���!������ ��"��'. � "� �� ��"� "�����".
� ����� � ������ !�� �� � ��"�� '�� ���"� " �� "�����" '! ��� $���'� �"
���"���� " "�����" '"& ���� (by value) ��� �� '����� ��� "�� "�����"
'��� "�� �'��� �� �� ��� �� ��, ��� ��� ��� �� �$�� �� ��, ��.
� +���� ���%��'� ��� " ����� � "������" �� �� ������ �� � �0 � ��� �� ��, ���
'"� "�� "�����" ��� ���� �� ��� � �� �� «$ �» ��� �� ��"� "�����".
� ����� ���� � $ �� ��� ������ !�� �� � ��"�� '�� ���"� " �� "�����", '! ���
$���'� �" ���"���� " "�����" '"& ���%���� (by reference) ��� ��&� �� $��
"�� "��'� �� $ � $��� � ��� &� ���"� �� ��, ��, � � $ ��� "�� ��, ��!
�. � ��� � ��� �������" ��3. ����'� �" /��"���� " ������" �'"& ���%����
������������ ���������������������������
� 2�� ���������� �� "�����" �� &� *��:
/*byreference.c: Perasma orismatwn mesw anaforas */#include <stdio.h>
void swap(int *ptrA, int *ptrB);
main(){int a=5,b=10;printf("\nMain: a=%d,b=%d",a,b);swap(&a,&b);printf("\nMain: a=%d,b=%d",a,b);
}
void swap(int *ptrA, int *ptrB){int k;k=*ptrA;*ptrA=*ptrB;*ptrB=k;printf("\nSwap: a=%d,b=%d",*ptrA,*ptrB);
}
�. � ��� � ��� �������" ��3. ����'� �" /��"���� " ������" �'"& ���%����
� ���������� ���������������������������
� 8� $�� �&� $�� � � �� ���!��� ����.
� ���� �� � �" �� "�����"� swap, �� ��, �'� a ��� b '���� ��� � ��� ��'� a=5 ���
b=10.
� �� ����'"�� ��� $� ����" �� a ���� 1000 ��� �� b 1012.
� � ��� &a, ��� �!�0 ��� "�� 1000, �( ��� &b ��� �!�0 ��� "�� 1012.
� ��� �(� ���� ����0 � ��' " �� swap ����� �� ��� ����:
a b
…
(!� � ��� main
5
(!� � ��� swapptrA
10
a b
…
(!� � ��� main
5
(!� � ��� swap
100010
1000 1012
ptrB
1000 1012
ptrA ptrB
1012
�. � ��� � ��� �������" ��3. ����'� �" /��"���� " ������" �'"& ���%����
�!���������� ���������������������������
� �� $�� �(�� ��� ����� ��� ��� '� ��� ��'���� "�� swap:
� k=*ptrA; //����'� � "�� ��, �� k �� ��� �� ��,��� ��� $ ��� � � ptrA
� *ptrA=*ptrB; ����'� � "�� ��, �� ��� $ ��� � � ptrA �� ��� ��� $ ��� � � ptrB
� *ptrB=k; ����'� � "�� ��, �� ��� $ ��� � � ptrB �� ��� ��� k
a b
…
(!� � ��� main
5
(!� � ��� swap
1000101000 1012
ptrA ptrB
1012
k
5
a b
…
(!� � ��� main
10
(!� � ��� swap
1000101000 1012
ptrA ptrB
1012
k
5
a b
…
(!� � ��� main
10
(!� � ��� swap
100051000 1012
ptrA ptrB
1012
k
5
�. � ��� � ��� �������" ��3. ����'� �" /��"���� " ������" �'"& ���%����
�"���������� ���������������������������
� 1� �������� :
� -�� ' "� ����� "�����" ���"� ��� � ��� �$� � ��� ��, �'� �� main!
� 2�� !�� ��� �!� ����, �� � �!'� ��� ����� "��� ��, �'� ����'���� ��� "��
main!
� ����.�0�����:
� �� �' �� �� � �* � ��� �� ��, ��� " �� "�����" ��� �� ����' "�
���� �� $����� � ��� "�� �� ��"� "�����", $��� � ��� �� ���"� '"&
���%���� ($ �$� '"& $ ���)
� � �(� $��� � ��� �� ���"� �� � '"& ����.
� +��� '��:
� � �� ��� ��� ����� ���� ����� �� '��� � ��""�� �� ��� '��
��"�� %� �� ���� '"���.
� 1� '�� ��"�� %� �� ����' "� �� �� ����� ��� �� return ��� �� � � '"&
$ ���!
� 9 ��� ��� �� � ����� �� ����� ��� ��� $�� ��"�� %� � � ��'� '"&
$ ���.
�. �������" ��1. ����'� �" ������ &� -��"� " ������"
������������ ���������������������������
� � �&":
� +� �$� ���� �� � "����"'�� �� $��� � ��� '��� ������ &� ���"�, ��� !�� �� ����
��� %��'� "�� ���!�&" ��� ���� ���� � �� ������ ��� ��� $ ��� " ��, ��, C
�� $�� � �� $��������:
� ���� �� !��.�� �� ��&������:
� 8� !��.�� �� ��&������:
� /����$���� ��� �� $�� ��&������ ��� �� ��"������"�� �� '��� �� �$��
����' "�.
void print(int *pinakas, int n);
void print(int pinakas[], int n);
� � ,�" �� �������& *’ ���"�� �� �'��"� ��� ������ " �� "�����" !�� ���
'"& ���%����.
� 2�� �� ����"� ��� �����$���� � �!� !�� ��� " '��� ������ ��� $��� � ��� &�
���"�, ����'� � ��� "�� �� ��"� "�����".
� �� �' �� �� � ��"�� ����!��%� ��� ������ &� ���"� " �� "�����", �� ��'� �
�� ����"� ��"�� ��(�� '�� ����!��%� ���.
�. �������" ��2. � ���� �� NULL
�#���������� ���������������������������
� #�� �� � "����"'�� ���� ���� �� �����&��� ��� " '��� $ ��� ��� $ � ��� '���
"�"� ��" � �� ��, ��. �.�. � �($����:
� 3� $����!�" � "%� � ��' "�! 1� p $ � $ ��� � ���� ��, ��� ���� �� ��
�� '"�� �� ��� � $ � �� �0�� ������ ��, ��, ��� �� ���!��� '� � ��
����"$��� "�� ��%���!
� ��� �(� ����� ���� $ (��� '�� $ ���, �� ��'� � �� ��� "�"� ��0�� �� ��, ��
����� �� ���� ����� �'� "�� ��.
� 3� ����*��� ��� ����� � � ����(" �� ��� �� �' �� � $ ���� �� � '� � ���. ��� ��� �!�
���� "�� C ���� ���"'� �� "�,� ��� "��� ��, �� NULL, �� ����� �� ��
��"������� "�,� ��� !�� �� ' ��� «� $ ���� $ � $ ��� � ���� ��». ����$ �!�:
int x;int *p;
*p=15;
int *p;
p=NULL; /* O p ��� ������� ������� */
+. �"��" ��1. ��� �!�"�� 7�0(� 4’4����� +*�"&"�
�%���������� ���������������������������
1. ���.� �� "�����" ����:
• � ����� �� ��� �!�0 � ��� ��0 � �� *�"&"� ax2+bx+c=0. � "�����" �� ��"��'% �
('"& ���"����) "��� ��, �'� x1 ��� x2 ��� ���!����'� ��0 � �� *�"&"� ��� ��
��"��'% � return �� � ���� �&� �" &� �� *�"&"�
• 4��� ��: 3� �� ��"� �� �� "�����":
• � ����� ���� ���"'� "�� ��� �� � %� �$�� math.h
• 4��� ��: / ���"$����"��� �&� printf, scanf !�� ���� $ $�'�&� float ���� %f (����
!�� %d "���� �� ������)
2. #� ��� !��.� �� "�����" main, ��� �� $��,�0 � ��� �� �"�$� ��� ��'� �&� a,b,c
("��� "�'� �� *�"&"�) ��� �%�� �� '" � �� "�����" rizes �� ����(� � ��
���� � ����� ��� ��0 � �� ,’ ,����� *�"&�.
int rizes(float a, float b, float c, float *x1, float *x2);
double sqrt(double x);
+. �"��" ��2. ������" init_array
�$���������� ���������������������������
1. ���.� �� "�����": void init_array(int *pinakas, int n, int a, int b) ��� �� ��������� � '��� ������ n �� ���&�, �������� ������� "�� $��"�� [a..b]
2. + '!*� �� ������� �� "�����"�� "�� ���� � ����$ �!���
+. �"��" ��3. ������" print_array
������������ ���������������������������
+� �� �� � �� ���!��� �� ���!�� �� �"�"�:
1. ���.� �� "�����": void print_array(int *pinakas, int n) ��� �� ���(� �
�� � �� �� �� ��� ������ �� ���&� pinakas.
2. + '!*� �� ������� �� "�����"�� "�� ���� � ����$ �!���
+. �"��" ��4. ������" max_array
������������ ���������������������������
+� �� �� � �� ���!��� �� ���!�� �� �"�"�:
1. ���.� �� "�����": int max_array(int *pinakas, int n) ��� �� ��"��'% �
��� '!�"�� "���� �� ��� ������ �� ���&� pinakas
2. + '!*� �� ������� �� "�����"�� "�� ���� � ����$ �!���
+. �"��" ��5. #�� �� �� ��� ���!���
������������ ���������������������������
��� ��0����� �� ���!�� �� ����$ �!�, !��.� �� "�����" main �����:
1. 8� $ (� � '��� ������ �� ���&� 1000 �'" &�
2. �'"� ��� '�� ���� �,��� �� ,���� �� $�� � 6 �� �!'� "��� ���"�:
1. 8� �"�! � �� '! ��� ��� ������
2. 8� ��������� � �������� ������� ��� �� a '&� �� b �� "���� �� ��� ������,
���� a ��� b ���� ������ ��� 0������� ��� �� ���"�.
3. 8� ,��"� � ��� '!�"�� ��� ������ ��� �� ��� ���(� �
4. 8� ���(� � � � �� "���� �� ��� ������
5. 8� ��� � '*�$� ��� ��� ���� �,��� �� ,����