C-Programmierung
Beispiele zu den C Kontrollstrukturen
← Ãœbersicht der Kontrollstrukturen | ● | Einrückung von Kontrollstrukturen →
Flaggen (Merker bzw. Flags)
#define TRUE 1
#define FALSE 0
#define boolean unsigned char
boolean flag=FALSE;
#define FALSE 0
#define boolean unsigned char
boolean flag=FALSE;
Einmalige Ausführung mit Flagge
if (!flag)
{
... /* execute once only */
flag=TRUE;
}
{
... /* execute once only */
flag=TRUE;
}
Fallunterscheidung nach Benutzereingabe
switch (getchar()) {
case 'y':
case 'Y':
yes();
break;
case 'n':
case 'N':
default:
no();
break;
case 'q':
case 'Q':
case 27: /* escape */
return;
}
case 'y':
case 'Y':
yes();
break;
case 'n':
case 'N':
default:
no();
break;
case 'q':
case 'Q':
case 27: /* escape */
return;
}
Bedingte Bewertung
printf("we had %d guest%s at our party \n",
n, (n==1)?"":"s");
n, (n==1)?"":"s");
Konsistenzprüfung
int x;
while (scanf("%d", &x)!=1); /* empty statement */
while (scanf("%d", &x)!=1); /* empty statement */
Primzahltest mit Merker
boolean prime=TRUE; /* flag whether or not the number x is prime */
if ((x&1)==0)
prime=FALSE;
else
for (int i=3; i*i<x; i+=2)
if (x%i==0) {
prime=FALSE;
break;
}
if ((x&1)==0)
prime=FALSE;
else
for (int i=3; i*i<x; i+=2)
if (x%i==0) {
prime=FALSE;
break;
}
Verschachtelte Schleife
/* tree crown */
for (int i=0; i<15; i++) {
for (int j=0; j<7-i/2; j++) putchar(' ');
for (int j=0; j<=i; j++) putchar('*');
putchar('\n');
}
/* tree trunk */
for (int i=0; i<3; i++) {
for (int j=0; j<7; j++) putchar(' ');
putchar('#');
putchar('\n');
}
/*
*
**
***
****
*****
******
*******
********
*********
**********
***********
************
*************
**************
***************
#
#
#
*/
for (int i=0; i<15; i++) {
for (int j=0; j<7-i/2; j++) putchar(' ');
for (int j=0; j<=i; j++) putchar('*');
putchar('\n');
}
/* tree trunk */
for (int i=0; i<3; i++) {
for (int j=0; j<7; j++) putchar(' ');
putchar('#');
putchar('\n');
}
/*
*
**
***
****
*****
******
*******
********
*********
**********
***********
************
*************
**************
***************
#
#
#
*/
Ãœbersicht der Kontrollstrukturen
← Ãœbersicht der Kontrollstrukturen | ● | Einrückung von Kontrollstrukturen →