Skip to content

Commit e7c45e4

Browse files
committed
chapter 6 exercises
1 parent 5ee28e5 commit e7c45e4

File tree

6 files changed

+196
-0
lines changed

6 files changed

+196
-0
lines changed

ex.6.2.c

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
// Test the divisibility of two use-supplied integers
2+
3+
#include <stdio.h>
4+
5+
int main (void)
6+
{
7+
int value1, value2;
8+
9+
printf ("Enter two integers\n");
10+
scanf ("%i %i", &value1, &value2);
11+
12+
if ( value1 % value2 == 0 )
13+
printf ("%i is evenly divisible by %i\n", value1, value2);
14+
else
15+
printf ("%i is not evenly divisible by %i\n", value1, value2);
16+
17+
return 0;
18+
}

ex.6.3.c

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
// Divide two use-supplied integers
2+
3+
#include <stdio.h>
4+
5+
int main (void)
6+
{
7+
int value1, value2;
8+
9+
printf ("Enter two integers\n");
10+
scanf ("%i %i", &value1, &value2);
11+
12+
if ( value2 != 0 )
13+
printf ("%i / %i = %.3f\n", value1, value2, (float) value1 / value2);
14+
else
15+
printf ("Division by zero\n");
16+
17+
return 0;
18+
}

ex.6.4.c

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
// Simple printing calculator
2+
3+
#include <stdio.h>
4+
5+
int main (void)
6+
{
7+
printf ("Begin Calculations\n");
8+
9+
double number, accumulator;
10+
char operator = '\0';
11+
12+
while ( operator != 'E' ) {
13+
scanf ("%lf %c", &number, &operator);
14+
15+
switch ( operator ) {
16+
case '+':
17+
accumulator += number;
18+
break;
19+
case '-':
20+
accumulator -= number;
21+
break;
22+
case '*':
23+
accumulator *= number;
24+
break;
25+
case '/':
26+
if ( number != 0 ) {
27+
accumulator /= number;
28+
break;
29+
}
30+
else {
31+
printf ("Division by zero\n");
32+
continue;
33+
}
34+
case 'S':
35+
accumulator = number;
36+
break;
37+
case 'E':
38+
break;
39+
default:
40+
printf ("Unknown operator\n");
41+
continue;
42+
}
43+
44+
printf ("= %f\n", accumulator);
45+
}
46+
printf ("End of Calculations.\n");
47+
48+
return 0;
49+
}

ex.6.5.c

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// Program to reverse the digits of a number
2+
3+
#include <stdio.h>
4+
5+
int main (void)
6+
{
7+
int number, absolute_value, right_digit;
8+
9+
printf ("Enter your number.\n");
10+
scanf ("%i", &number);
11+
12+
absolute_value = ( number < 0 ) ? -number : number;
13+
14+
do {
15+
right_digit = absolute_value % 10;
16+
printf ("%i", right_digit);
17+
absolute_value /= 10;
18+
}
19+
while ( absolute_value != 0 );
20+
21+
if ( number < 0 )
22+
printf ("-");
23+
24+
printf ("\n");
25+
26+
return 0;
27+
}

ex.6.6.c

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
// Display digits in English
2+
3+
#include <stdio.h>
4+
5+
int main (void)
6+
{
7+
int number, digit;
8+
9+
printf ("Type an integer\n");
10+
scanf ("%i", &number);
11+
12+
int power = 1;
13+
while ( number / power > 9 )
14+
power *= 10;
15+
16+
do {
17+
digit = number / power;
18+
number -= digit * power;
19+
power /= 10;
20+
21+
switch ( digit ) {
22+
case 0:
23+
printf ("zero ");
24+
break;
25+
case 1:
26+
printf ("one ");
27+
break;
28+
case 2:
29+
printf ("two ");
30+
break;
31+
case 3:
32+
printf ("three ");
33+
break;
34+
case 4:
35+
printf ("four ");
36+
break;
37+
case 5:
38+
printf ("five ");
39+
break;
40+
case 6:
41+
printf ("six ");
42+
break;
43+
case 7:
44+
printf ("seven ");
45+
break;
46+
case 8:
47+
printf ("eight ");
48+
break;
49+
case 9:
50+
printf ("nine ");
51+
break;
52+
}
53+
}
54+
while ( number != 0 );
55+
56+
printf ("\n");
57+
58+
return 0;
59+
}

ex.6.7.c

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
// Program to generate a table of prime numbers
2+
3+
#include <stdio.h>
4+
#include <stdbool.h>
5+
6+
int main (void)
7+
{
8+
int p, d;
9+
bool isPrime;
10+
11+
for ( p = 2; p <= 50; p += (p == 2) ? 1 : 2 ) {
12+
13+
isPrime = true;
14+
15+
for ( d = 3; isPrime && d < p; d += 2 )
16+
if ( p % d == 0 )
17+
isPrime = false;
18+
19+
if ( isPrime != false )
20+
printf ("%i ", p);
21+
}
22+
23+
printf ("\n");
24+
return 0;
25+
}

0 commit comments

Comments
 (0)