?? selsolutionsc5.txt
字號:
Chapter 2
PE 2-1
/* Programming Exercise 2-1 */
#include <stdio.h>
int main(void)
{
printf("Anton Bruckner\n");
printf("Anton\nBruckner\n");
printf("Anton ");
printf("Bruckner\n");
return 0;
}
PE 2-3
/* Programming Exercise 2-3 */
#include <stdio.h>
int main(void)
{
int ageyears; /* age in years */
int agedays; /* age in days */
/* large ages may require the long type */
ageyears = 44;
agedays = 365 * ageyears;
printf("An age of %d years is %d days.\n", ageyears, agedays);
return 0;
}
PE 2-4
/* Programming Exercise 2-4 */
#include <stdio.h>
void jolly(void);
void deny(void);
int main(void)
{
jolly();
jolly();
jolly();
deny();
return 0;
}
void jolly(void)
{
printf("For he's a jolly good fellow!\n");
}
void deny(void)
{
printf("Which nobody can deny!\n");
}
PE 2-5
/* Programming Exercise 2-5 */
#include <stdio.h>
int main(void)
{
int toes;
toes = 10;
printf("toes = %d\n", toes);
printf("Twice toes = %d\n", 2 * toes);
printf("toes squared = %d\n", toes * toes);
return 0;
}
/* or create two more variables, set them to 2 * toes and toes * toes */
PE 2-7
/* Programming Exercise 2-7 */
#include <stdio.h>
void one_three(void);
void two(void);
int main(void)
{
printf("starting now:\n");
one_three();
printf("done!\n");
return 0;
}
void one_three(void)
{
printf("one\n");
two();
printf("three\n");
}
void two(void)
{
printf("two\n");
}
Chapter 3
PE 3-2
/* Programming Exercise 3-2 */
#include <stdio.h>
int main(void)
{
int ascii;
printf("Enter an ASCII code: ");
scanf("%d", &ascii);
printf("%d is the ASCII code for %c.\n", ascii, ascii);
return 0;
}
PE 3-4
/* Programming Exercise 3-4 */
#include <stdio.h>
int main(void)
{
float num;
printf("Enter a floating-point value: ");
scanf("%f", &num);
printf("fixed-point notation: %f\n", num);
printf("exponential notation: %e\n", num);
return 0;
}
PE 3-6
/* Programming Exercise 3-6 */
#include <stdio.h>
int main(void)
{
float mass_mol = 3.0e-23; /* mass of water molecule in grams */
float mass_qt = 950; /* mass of quart of water in grams */
float quarts;
float molecules;
printf("Enter the number of quarts of water: ");
scanf("%f", &quarts);
molecules = quarts * mass_qt / mass_mol;
printf("%f quarts of water contain %e molecules.\n", quarts,
molecules);
return 0;
}
Chapter 4
PE 4-1
/* Programming Exercise 4-1 */
#include <stdio.h>
int main(void)
{
char fname[40];
char lname[40];
printf("Enter your first name: ");
scanf("%s", fname);
printf("Enter your last name: ");
scanf("%s", lname);
printf("%s, %s\n", lname, fname);
return 0;
}
PE 4-4
/* Programming Exercise 4-4 */
#include <stdio.h>
int main(void)
{
float height;
char name[40];
printf("Enter your height in inches: ");
scanf("%f", &height);
printf("Enter your name: ");
scanf("%s", name);
printf("%s, you are %.3f feet tall\n", name, height / 12.0);
return 0;
}
PE 4-6
/* Programming Exercise 4-6 */
#include <stdio.h>
#include <float.h>
int main(void)
{
float ot_f = 1.0 / 3.0;
double ot_d = 1.0 / 3.0;
printf(" float values: ");
printf("%.4f %.12f %.16f\n", ot_f, ot_f, ot_f);
printf("double values: ");
printf("%.4f %.12f %.16f\n", ot_d, ot_d, ot_d);
printf("FLT_DIG: %d\n", FLT_DIG);
printf("DBL_DIG: %d\n", DBL_DIG);
return 0;
}
Chapter 5
PE 5-1
/* Programming Exercise 5-1 */
#include <stdio.h>
int main(void)
{
const int minperhour = 60;
int minutes, hours, mins;
printf("Enter the number of minutes to convert: ");
scanf("%d", &minutes);
while (minutes > 0 )
{
hours = minutes / minperhour;
mins = minutes % minperhour;
printf("%d minutes = %d hours, %d minutes\n", minutes, hours, mins);
printf("Enter next minutes value (0 to quit): ");
scanf("%d", &minutes);
}
printf("Bye\n");
return 0;
}
PE 5-3
/* Programming Exercise 5-3 */
#include <stdio.h>
int main(void)
{
const int daysperweek = 7;
int days, weeks, day_rem;
printf("Enter the number of days: ");
scanf("%d", &days);
weeks = days / daysperweek;
day_rem = days % daysperweek;
printf("%d days are %d weeks and %d days.\n", days, weeks, day_rem);
return 0;
}
PE 5-5
/* Programming Exercise 5-5 */
#include <stdio.h>
int main(void) /* finds sum of first n integers */
{
int count, sum;
int n;
printf("Enter the upper limit: ");
scanf("%d", &n);
count = 0;
sum = 0;
while (count++ < n)
sum = sum + count;
printf("sum = %d\n", sum);
return 0;
}
PE 5-7
/* Programming Exercise 5-7 */
#include <stdio.h>
void showCube(double x);
int main(void) /* finds cube of entered number */
{
double val;
printf("Enter a floating-point value: ");
scanf("%lf", &val);
showCube(val);
return 0;
}
void showCube(double x)
{
printf("The cube of %e is %e.\n", x, x*x*x );
}
Chapter 6
PE 6-1
/* pe6-1.c */
/* this implementation assumes the character codes */
/* are sequential, as they are in ASCII. */
#include <stdio.h>
#define SIZE 26
int main( void )
{
char lcase[SIZE];
int i;
for (i = 0; i < SIZE; i++)
lcase[i] = 'a' + i;
for (i = 0; i < SIZE; i++)
printf("%c", lcase[i]);
printf("\n");
return 0;
}
PE 6-3
/* pe6-3.c */
/* this implementation assumes the character codes */
/* are sequential, as they are in ASCII. */
#include <stdio.h>
int main( void )
{
char let = 'F';
char start;
char end;
for (end = let; end >= 'A'; end--)
{
for (start = let; start >= end; start--)
printf("%c", start);
printf("\n");
}
return 0;
}
PE 6-5
/* pe6-5.c */
#include <stdio.h>
int main( void )
{
int lower, upper, index;
int square, cube;
printf("Enter starting integer: ");
scanf("%d", &lower);
printf("Enter ending integer: ");
scanf("%d", &upper);
printf("%5s %10s %15s\n", "num", "square", "cube");
for (index = lower; index <= upper; index++)
{
square = index * index;
cube = index * square;
printf("%5d %10d %15d\n", index, square, cube);
}
return 0;
}
PE 6-7
/* pe6-7.c */
#include <stdio.h>
int main( void )
{
double n, m;
double res;
printf("Enter a pair of numbers: ");
while (scanf("%lf %lf", &n, &m) == 2)
{
res = (n - m) / (n * m);
printf("(%.3g - %.3g)/(%.3g*%.3g) = %.5g\n", n, m, n, m, res);
printf("Enter next pair (non-numeric to quit): ");
}
return 0;
}
PE 6-10
/* pe6-10.c */
#include <stdio.h>
#define SIZE 8
int main( void )
{
int vals[SIZE];
int i;
printf("Please enter %d integers.\n", SIZE);
for (i = 0; i < SIZE; i++)
scanf("%d", &vals[i]);
printf("Here, in reverse order, are the values you entered:\n");
for (i = SIZE - 1; i > 0; i--)
printf("%d ", vals[i]);
printf("\n");
return 0;
}
PE 6-12
/* pe6-12.c */
/* This version starts with the 0 power */
#include <stdio.h>
#define SIZE 8
int main( void )
{
int twopows[SIZE];
int i;
int value = 1; /* 2 to the 0 */
for (i = 0; i < SIZE; i++)
{
twopows[i] = value;
value *= 2;
}
i = 0;
do
{
printf("%d ", twopows[i]);
i++;
} while (i < SIZE);
printf("\n");
return 0;
}
PE 6-13
/* pe-13.c */
/* Programming Exercise 6-13 */
#include <stdio.h>
#define SIZE 8
int main(void)
{
double arr[SIZE];
double arr_cumul[SIZE];
int i;
printf("Enter %d numbers:\n", SIZE);
for (i = 0; i < SIZE; i++)
{
printf("value #%d: ", i + 1);
scanf("%lf", &arr[i]);
/* or scanf("%lf", arr + i); */
}
arr_cumul[0] = arr[0]; /* set first element */
for (i = 1; i < SIZE; i++)
arr_cumul[i] = arr_cumul[i-1] + arr[i];
for (i = 0; i < SIZE; i++)
printf("%8g ", arr[i]);
printf("\n");
for (i = 0; i < SIZE; i++)
printf("%8g ", arr_cumul[i]);
printf("\n");
return 0;
}
PE 6-15
/* pe6-15.c */
#include <stdio.h>
#define RATE_SIMP 0.10
#define RATE_COMP 0.05
#define INIT_AMT 100.0
int main( void )
{
double daphne = INIT_AMT;
double deidre = INIT_AMT;
int years = 0;
while (deidre <= daphne)
{
daphne += RATE_SIMP * INIT_AMT;
deidre += RATE_COMP * deidre;
++years;
}
printf("Investment values after %d years:\n", years);
printf("Daphne: $%.2f\n", daphne);
printf("Deidre: $%.2f\n", deidre);
return 0;
}
Chapter 7
PE 7-1
/* Programming Exercise 7-1 */
#include <stdio.h>
int main(void)
{
char ch;
int sp_ct = 0;
int nl_ct = 0;
int other = 0;
while ((ch = getchar()) != '#')
{
if (ch == ' ')
sp_ct++;
else if (ch == '\n')
nl_ct++;
else
other++;
}
printf("spaces: %d, newlines: %d, others: %d\n", sp_ct, nl_ct, other);
return 0;
}
PE 7-3
/* Programming Exercise 7-3 */
#include <stdio.h>
int main(void)
{
int n;
double sumeven = 0.0;
int ct_even = 0;
double sumodd = 0.0;
int ct_odd = 0;
while (scanf("%d", &n) == 1 && n != 0)
{
if (n % 2 == 1)
{
sumodd += n;
++ct_odd;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -