Zdjęcia Kajana
Zadanie 1
Wykonanie tego fragmentu kodu dla tablicy intów o ustalonej
wielkości size
int
t[] = {
23
,
2
,
3
,
7
,
1
};
int
size =
5
;
int
z =
0
, m1 = t[
0
], m2 = m1;
for
(
int
i =
1
; i < size; i++){
if
(t[i] < m1) {
z += m1-t[i];
m1 = t[i];
}
else
if
(t[i] > m2){
z+=t[i]-m2;
m2 = t[i];
}
}
cout
<< z;
Rożnicę pomiędzy największym elementem a najmniejszym
Zadanie 2
Po wywołaniu funkcji fun(2). Na ekran zostanie wydrukowane
void fun(int n)
if
(n>
0
){
cout
<< n;
zad2
(n-
1
);
cout
<< n;
}
Zostanie wydrukowane na ekran 2112
Zadanie 3
Które z poprawnych deklaracji jest poprawne
//const int k;
// a nie moze byc
//int k, *m = &k;
// b moze byc
//int *k, m = &k;
// c nie moze byc
//int k = 7, &m = k;
// d moze byc
Zadanie 4
Mamy zdefiniowaną klasę z domyślnym konstruktorem
Klasa
k, *p;
p =
new
Klasa
;
//Poprawne
//k = new klasa;
//Nie
//*k = new Klasa;
//Nie
Zadanie 5
int
tab[] = {
1
,
2
,
3
,
4
,
5
}, *p = tab+
1
;
cout
<< p[
2
];
Wydrukuje 4
Zadanie 6
const
char
* s =
"UVWXYZ"
;
cout
<< *(&s[
3
]-
2
) << endl;
Wydrukuje „V”
Zadanie 7
void
F(
int
*,
int
=
0
,
double
=
0
);
int
k =
7
, *pk = &k;
double
x =
7
, *px = &x;
//F(&k,k);
//F(&k);
//F(pk, *pk, x);
//F(pk, *pk, *px);
Wszystkie są błędne
Zadanie 8
int
fun(
int
& m,
int
*n){
++m;
return
*n -
1
;
}
void
zad8(){
int
a =
1
, b =
2
;
int
c =
fun
(a, &b);
cout
<< a << b << c << endl;
}
Wydrukuje 221
Zadanie 9
void
zad9(
const
char
* nap) {
//ABCD
if
( *nap !=
'D'
){
zad9
(nap+
1
);
cout
<< *nap;
}
}
Wydrukuje CBA
Zadanie 11
const
int
*p, k =
7
;
p = &k;
cout
<< *p << endl;
Wartość *p wynosi 7
Zadanie 14
int
tab[] = {
1
,
2
,
3
,
4
,
5
}, *t = &tab[
1
];
cout
<<t[
2
] <<
" "
<< t[
4
] << endl;
Wydrukuje 4 i przypadkową liczbę
Zadanie 15
int
fun
(
int
&);
int
k =
1
, *m = &k, &n = *m;
//m = fun(k);
//zle
//n = fun(*m);
//dobrze
//n = fun(&k);
//zle
NIE DA RADY ODCZYTAĆ
//dobrze
2 i 4 są poprawne
Zadanie 16
double
(*p[
2
])(
double
) = {sin, cos};
p[
1
] = sin;
//double x = p(3.14)[0];
//double x = p(0)[2];
double
x = p[
0
](
0
)*p[
1
](
2
);
p[
2
]= cos;
//p[
0
]=cos;
1 4 5
Zadanie 19
int
fun(
int
a,
int
*pb,
int
&c) {
++a;
++*pb;
++c;
return
a + *pb + c;
}
void
zad19(){
int
a =
0
, b =
1
, c =
2
, x =
fun
(a, &b, c);
cout
<< a + b + c + x << endl;
Wynikiem tego jest 0 + 2 + 3 + 1 + 2 +3 => 11
Zadanie 20
int
k, *p;
int
*tab[
10
];
//p = tab[0];
//tak
//tab[0] = *p;
//nie
//tab[0] = k;
//nie
//tab[0] = &k;
//tak
//p = tab;
//nie
//tab[0] = p;
//tak
cout
<<
"Poprawne odpowiedzi to A D F "
<< endl;
Zadanie 21
int
i[
10
] = {
0
}, q =
1
, *p = i;
//i[5] = p;
//nie
//q = i[5];
//tak
//p = &i[5];
//tak
//p[5] = i[6];
//tak
//*p[5] = 5;
//nie
cout
<<
"2, 3, 4"
<< endl;
Zadanie 22
Struktura B została wcześniej zdefiniowana. Co trzeba skreślić aby to działało
//A a;
//A* pa;
//B b;
cout
<<
"Bedzie mozliwe po skresleniu 2 lini"
<< endl;
Zadanie 25
double
tab1[] = {
1
,
4
,
7
,
10
};
double
tab2[] = {
2
,
5
,
8
,
11
};
double
tab3[] = {
3
,
6
,
9
,
12
};
double
*tab[] = {tab1, tab2, tab3};
cout
<< *(*(tab +
2
) +
1
) << endl;
Wyświetli 6
Zadanie 28
void
F28(
int
& n){
}
void
zad28(){
int
k;
F28
(k);
cout
<<
"F(k)"
<< endl;
}
definiowanie tablic
int t[4] = { 17, 5, 4, 3}
char zdanie[40] = {"wszystkie dzieci nasze sa"}
char zdanie = "wszystkie dzieci nasze sa|
char zdanie2[] = {"jebac lamusow"}
int d[3][3] = {1,2,3,4,5,6,7,8,9};
sizeof
(zrodlo)/
sizeof
(
char
)
strncat
(t1,
"123456789"
,
5
); wklejenie do t1 5 znakow ""
strcmp(s1,s2); porownuje napisy
wskaznik = &tablica[0];
int
(*wsk) ();
wsk = pierwsza;
(*wsk)();
cin >> rozmiar;
int * tablica;
tablica = new int[rozmiar];
int (*tablica)[7][4] = new int[rozmiar][7][4]
const double * wsk można go przestawiać a nie wolno modyfikowac //wskaznik do
obiektu stalego
double * const wsk mozna go modyfikowac a nie przestawiac
//wskaznik
staly
const double * const wsk nic z nim nie mozna zrobic
tablice obiektow dla public:
stacja_metra stacyjka[15] = { { ... } , { ... } , { ... } }
tablice obiektow dla private
stacje_metra zielona_linia[15] = { stacje_metra(...), stacje_metra( ... ) }
Frac
operator
+(
const
Frac
& f){
Frac
wynik;
wynik.
nomin
= (
this
->
nomin
*f.
denom
)+(f.
nomin
*
this
->
denom
);
wynik.
denom
= (
this
->
denom
* f.
denom
);
wynik.
skroc
();
return
wynik;
}
Frac
operator
+(
int
n){
Frac
wynik;
Frac
pom(n);
wynik = *
this
+ pom;
wynik.
skroc
();
return
wynik;
}
Frac
operator
+(
int
n,
const
Frac
& f){
Frac
wynik;
Frac
pom(n);
wynik = pom + f;
wynik.
skroc
();
return
wynik;
}
ostream
&
operator
<<(
ostream
& s,
const
Frac
& f){
s <<
"["
<< f.
nomin
<<
"/"
<< f.
denom
<<
"]"
;
return
s;
}
Tab
operator
++(
int
){
Tab
* pomocnicza =
new
Tab
(*
this
);
for
(
int
i =
0
; i <
size
; i++){
t
[i]++;
}
return
* pomocnicza;
}
Tab
operator
-(){
Tab
* pomocnicza =
new
Tab
(*
this
);
for
(
int
i =
0
; i <
size
; i++){
pomocnicza->
t
[i] *= -
1
;
}
return
* pomocnicza;
}
Stack(
const
Stack
&stack){ }
Tab
operator
=(
const
Tab & tab){
size = tab.size;
delete
t;
t =
new
int
[size];
for
(
int
i =
0
; i < size; i++) {
t[i] = tab.t[i];
}
return
*
this
;
}