Professional Documents
Culture Documents
Monitori
Monitori
(X)
KOLOKVIJUM 3
Dino Kosić
Elektrotehnički fakultet Banja Luka
2009.
10.1. Zadatak 1
#include <stdio.h>
main()
{
unsigned char p1=0x20, p2, p3;
p3=~(0xF*0x10); p2=p1|~p1;
printf("%x %o", p2, p3);
}
f f 1 7
2
10.2. Zadatak 2
#include <stdio.h>
union U { int i; char c; } u={0x35};
main()
{
printf("%d %c", u.i, u.c);
}
5 3 5
3
10.3. Zadatak 3
#include <stdio.h>
int m[4][4]={{1},{2,3}};
void f(int *p, int m, int n)
{
int i,b1,b2=0,s=0;
for (i=m, b1=b2; i<=n; s+=*p, i++)
if (*(p+i)) b1++;
else ++b2;
printf("%d %d", b2, s);
}
main()
{
int *p=&m[1][1];
f(p,1,5);
}
5 1 5
4
10.4. Zadatak 4
#include <stdio.h>
void rf(char b)
{
printf("%d",b&1);
if (b>>1)
rf(b>>2);
}
main()
{
rf(6);
}
0 1
5
10.5. Zadatak 5
#include <stdio.h>
struct S {char *c1,*c2;} s,*ps=&s;
main()
{
char c1,c2;
s.c1=&c2;
*s.c1='3';
c1++;
ps->c2=&c1;
*ps->c2 ='C';
printf("%c%c", c2, ++(*ps->c1));
}
4 4
6
10.6. Zadatak 6
7
10.7. Zadatak 7
int f(int n)
{
if (n<3)
return (n);
else
return (f(n-1)+f(n-2));
}
8
10.8. Zadatak 8
9
10.9. Parametri komandne linije
KOMANDNA LINIJA?
10
10.9. Parametri komandne linije
KOMANDNA LINIJA?
Program koji u ispisuje broj argumenata i sve argumente komandne linije (ne
računajući ime izvršne datoteke).
#include<stdio.h>
int main (int argc, char** argv)
{
int i;
printf("Broj argumenata: %d\n", argc-1);
for (i=1; i<argc; i++)
printf("%d. argument: %s\n", i, argv[i]);
}
11
10.9. Parametri komandne linije
KOMANDNA LINIJA?
Program koji u datoteku čiji je naziv argument komandne linije upisuje JAJCE
#include<stdio.h>
int main (int argc, char** argv)
{
FILE *dat;
dat=fopen(argv[1],"w");
fprintf(dat, "JAJCE\n");
fclose(dat);
}
12