Podstawy programowania
Zad.1
Określić typy następujących stałych:
1997 - int (liczby całkowite
0.31415e + 1 - double (liczby rzeczywiste)
` \ n ` - char (pojedyczy znak)
„ The C Language” - char[14] (ciąg znaków jako tablica znakowa)
Zad.2
Zadeklarować zmienne:
- c typu stosowanego dla liczb całkowitych z przedziału < 0 ; 1000 > - unsigned int c;
- q typu wskaźników do zmiennych zmiennych znakowych - char *q;
- p typu stosowanego do reprezentacji liczby zespolonej - complex<double> p;
Zad.3
a.
-
(-b+sqrt(b*b+4*a*c))/(2*a)
b.
(1/a+1/c)/(c+d)
c.
( x ≤ y ) ^ ( y < z ) (x<=y)&&(y<z)
Zad.4
Obliczyć wartość wyrażeń:
2 * 3 - 4 * 5 -14
15 / 4 * 4 12
( 1 > 2 ) ? 3 : 4 0 (false)
2 = = 3 0 (false)
Zad.5
Określić typy wyników następujących wyrażeń
80 / 5 / 3 double
-7.0e + 1 + 3 int ?? po e coś jeszcze powinno być chyba
Zad.6
Zakładając, że zmienne typu a, b, c, d reprezentują typ char określić typy wyników wyrażeń:
c >= `0' kk c <= `9' - co to jest kk??
Zad.7
W następujących wyrażeniach, zwiększeniu ulega wskaźnik p, czy obiekt, na który wskazuję p ? nie wiem co to za operator ?
+ + *p moim zdaniem na obiekty
( * p ) + + ---------------„------------ ale mogę się mylić
Zad.8
Czy priorytet operatora ` * ` jest zawsze wyższy od ` + ` ? w bezpośrednich operacjach tak, np. 5+2*3=11
Zad.9
Zakładając, że zmiennej c przypisano dodatnią liczbę całkowitą określić kolejność obliczenia wyrażenia:
( c > -10 ) | | ( c = = 0 ) | | ( c > 0 ) c==0; c>-10;c>0; ||; || - chyba tak
Zad.10
Zakładając, że a jest liczbą całkowitą, a funkcja f zadeklarowana jest w sposób następujący:
int f ( int *x );
zapisać prawidłowe wywołanie funkcji f z argumentem a. cout<<f(&a);
Zad.11
Zapisać ciąg instrukcji realizujących sieć
q=0;for(r=x;r>=y;r=r-y){q=q+1} lub r=x;for(q=0;r>=y;q++){r=r-y;} ale sprawdź
Zad.12
Przedstawiony ciąg instrukcji zapisać używając instrukcji for
i = 0 ;
m = a[i] ;
while ( i < n )
{
if ( a[i] > m ) m = a[i];
i = i + 1 ;
}
odp: m=a[0];for(i=1;i<n;i++){if (a[i]>m) m=a[i];}
Zad.13
Zakładając, że a jest tablicą składającą się z 10 elementów rzeczywistych zapisać sekwencję instrukcji drukujących elementy tej tablicy
Odp: for(int i=0;i<10;i++){cout<<a[i]<<endl;} - ale to c++ w c musisz pewnie printf'a użyć
Zad.14
Zapisać ciąg instrukcji wyznaczających Sumę 10 pierwszych wyrazów szeregu :
s = 1 + 1/2 + 1/3 + ¼ + ...
s=0; for(int i=1;i<=10;i++){s=s+1/i;}
Zad.15
Jaką wartość zwróci funkcja f dla argumentu równego 3 ?
int f ( int n )
{
if ( n > 0 ) return n + f ( n - 1 ); WYNIK BĘDZIE PIĘĆ :P ?
else return 0;
}
odp. 3+2+1+0 = 6
Zad.16
Zaproponować makrodefinicję ODD zwracającą 1 dla argumentów nieparzystych.
Odp. #define ODD(x) if(x%2)cout<<1; lub #define ODD(x) if(x%2) return 1;