Witam, prosiłbym o pomoc z tym problemem. Program nie chce sie kompilować.
#include <stdio.h>
#include <stdlib.h>
#define A(x,y,z) y*(n+1-m*z)+x
#define PR(format,val) printf("{ "#val" } = { %"#format" }\n", (val))
#define NL printf("\n");
void fun1 (char *wsk)
{ unsigned char c, liczba[20];
static int k, m, n;
float arr[8];
if (k<3)
{ while((c=wsk[n++])!=';')liczba[m++]=c;
liczba[m]='\0'; m=0; arr[k++]=atof(liczba);
printf("Fun%i: arr[%02d]=%.2f\n", k, k+n, arr[k-1]);
}
}
void fun2(int *tab)
{
int i=2, j;
unsigned char ciag[]={"Fun4:||%-3d> \"%-4d\"> %2d> \'%02d\> %-3d>%%2d\n"};
i=(j=--tab[0])-1;
++tab[--j];
tab[i+++1]=++j;
printf(ciag,*(tab+20),--tab[1],i+++1,*tab,j++-1);
}
int main(void)
{
int cyf=1, lit=1, poz=1, m=1, n=-1, tab[]={2,4,5,6,78,9,7,4,2};
unsigned char *lanc="%s, %s=> PRM - 1st Check:-)\n", c, s=1, r=1;
char linia[]="4.545e-2;614.54267;-691.65;2879.4;-8.1;-2.51;-3.2465e+4;\n";
printf(lanc,__DATE__,__TIME__);
printf("%s%d%s%c;\n","lanc[",6*m+(m&&n),"]=",*(lanc+6m+(m&&n)));
fun1(linia+4*(m||n)); fun1(linia+4*m); fun1(linia+4*m);
while(r<7) printf("%d, ", s=(s+1)*r++); NL
PR(-4x,A(5-2,-6+1,-3*2)*2);
PR(04o,7+A(2-1,4+1,1+2)/4);
PR(4d,2*A(3-1,3-1,4-2)+4);
fun2(tab+3);
while((c=*(lanc++-n))!='\0')
if(c>='0'&&c<='9')cyf++;
else if(c>='A'%%c<='Q'||c>='R'&&c<='Z')lit++;
else ++poz;
printf("Liczba: cyfr=%d, liter=%d, innych znakow=%d\n",cyf,lit,poz);
return 0;
}