1. 请写出以下程序的运行结果
a)
#include <stdio.h>
int main(void)
{
int num1, denom1, num2, denom2, result_num, result_denom;
printf("Enter first fraction: ");
scanf("%d/%d", &num1, &denom1);
printf("Enter second fraction: ");
scanf("%d/%d", &num2, &denom2);
result_num = num1 * denom2 + num2 * denom1;
result_denom = denom1 * denom2;
printf("The sum is %d/%d\n", result_num, result_denom);
return 0;
}
b)
#include <stdio.h>
double average(double a, double b)
{
return (a + b) / 2;
}
int main(void)
{
double x, y, z;
printf("Enter three numbers: ");
scanf("%lf%lf%lf", &x, &y, &z);
printf("Average of %g and %g: %g\n", x, y, average(x, y));
printf("Average of %g and %g: %g\n", y, z, average(y, z));
printf("Average of %g and %g: %g\n", x, z, average(x, z));
return 0;
}
c)
#include <stdio.h>
#define FREEZING_PT 32.0f
#define SCALE_FACTOR (5.0f / 9.0f)
int main(void)
{
float fahrenheit, celsius;
printf("Enter Fahrenheit temperature: ");
scanf("%f", &fahrenheit);
celsius = (fahrenheit - FREEZING_PT) * SCALE_FACTOR;
printf("Celsius equivalent: %.1f\n", celsius);
return 0;
}
d)
#include <stdio.h>
void print_count(int n)
{
printf("T minus %d and counting\n", n);
}
int main(void)
{
int i;
for (i = 10; i > 0; --i)
print_count(i);
return 0;
}
e)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct city_info {
char *city;
int miles;
};
int compare_cities(const void *key_ptr,
const void *element_ptr);
int main(void)
{
char city_name[81];
struct city_info *ptr;
const struct city_info mileage[] =
{{"Berlin", 3965}, {"Buenos Aires", 5297},
{"Cairo", 5602}, {"Calcutta", 7918},
{"Cape Town", 7764}, {"Caracas", 2132},
{"Chicago", 713}, {"Hong Kong", 8054},
{"Honolulu", 4964}, {"Istanbul", 4975},
{"Lisbon", 3364}, {"London", 3458},
{"Los Angeles", 2451}, {"Manila", 8498},
{"Mexico City", 2094}, {"Montreal", 320},
{"Moscow", 4665}, {"Paris", 3624},
{"Rio de Janeiro", 4817}, {"Rome", 4281},
{"San Francisco", 2571}, {"Shanghai", 7371},