Programexempel från C-föreläsning 1, onsdag 11 november 2009 ============================================================ Ur "Grunder om programspråket C" (http://www.databasteknik.se/webbkursen/c-grunder/): Vårt första C-program --------------------- #include int main(void) { printf("Hej, världen!\n"); return 0; } Mer ur "Grunder om programspråket C": Vårt andra C-program -------------------- #include int main(void) { int x; int y = 17; x = 5; y = x; x = x + y*10 + 3; printf("x innehåller %d och y innehåller %d.\n", x, y); return 0; } westley.c -- så här kan ett C-program se ut... ---------------------------------------------- #define _ -F<00||--F-OO--; int F=00,OO=00;main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO() { _-_-_-_ _-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_ _-_-_-_ } En programsnutt från ett annat C-program ---------------------------------------- 1>2==1%("a"[!7])?~0xf<<2:1&3,1|4,*&"\*" En annan variant av vårt första C-program ----------------------------------------- #include #include int main (void) { printf("Hallå, världen!\n"); return EXIT_SUCCESS; } /* main */ En tredje variant av vårt första C-program ------------------------------------------ #include # include int main( void ) { printf( "Hallå, världen!\n"); return EXIT_SUCCESS; } Diverse variabler ----------------- /* Diverse variabler */ #include #include int i1, i2; int main(void) { int i3; float f1, f2; i1 = 7; i2 = i1 + 2 * i1; f1 = 6.5; f2 = f1 + f2; /* Fel! Varför? */ i1 = f1; /* Inte fel...? */ i1 = f2; /* Fel...? */ return EXIT_SUCCESS; } /* main */ Kopiera ett tecken ------------------ #include #include /* Kopiera ett tecken från * standardinmatningen (stdin) * till standardutmatningen (stdout) */ int main(void) { char c; c = getchar(); putchar(c); return EXIT_SUCCESS; } /* main */ Val med hjälp av if-sats ------------------------ #include #include int main(void) { char c; c = getchar(); if (c == 'x') printf("Du skrev 'x'.\n"); else printf("Du skrev något annat.\n"); return EXIT_SUCCESS; } /* main */ Kopiera flera tecken tills det kommer ett 'x' --------------------------------------------- #include #include /* Kopiera standardinmatningen (stdin) * till standardutmatningen (stdout) */ int main(void) { char c; c = getchar(); while (c != 'x') { putchar(c); c = getchar(); } return EXIT_SUCCESS; } /* main */ Körexempel ---------- hej alla apskaft! hej alla apskaft! tjoho! tjoho! sex laxar i en laxask! se Kopiera en hel fil (dvs, tills det kommer ett EOF) -------------------------------------------------- #include #include /* Kopiera standardinmatningen (stdin) * till standardutmatningen (stdout) */ int main(void) { int c; c = getchar(); while (c != EOF) { putchar(c); c = getchar(); } return EXIT_SUCCESS; } /* main */ Kopiera en hel fil (version 2) ------------------------------ #include #include /* Kopiera standardinmatningen (stdin) * till standardutmatningen (stdout) */ int main(void) { int c; while ((c = getchar()) != EOF) putchar(c); return EXIT_SUCCESS; } /* main */ Inlämningsuppgift 1: testning ----------------------------- Inte programmering Deadline på fredag!