7.
# include <stdio.h>
# include <ctype.h>
int letter_location (char ch);
int main (void)
{
char ch;
int location;
while ((ch = getchar()) != EOF)
{
if ((location = letter_location(ch)) == -1)
printf("%c is not a letter.\n", ch);
else
printf("%c is a letter, location: %d\n", ch, location);
}
return 0;
}
int letter_location (char ch)
{
if (isalpha(ch))
{
ch = tolower(ch);
return (ch - 'a' + 1);
}
else
return -1;
}
8.
# include <stdio.h>
# include <stdlib.h>
double power (double a, int c);
int main (void)
{
double x, xpow;
int y;
printf("Test power() function:\n");
printf("Enter a number and exponent: \n");
while ((scanf("%lf %d", &x, &y)) == 2)
{
xpow = power(x, y);
printf("%lf ^ %d = %lf\n", x, y, xpow);
printf("Enter a number and exponent: \n");
}
return 0;
}
double power (double a, int c)
{
double base = a;
if (a == 0)
{
if (c == 0)
{
printf("Warning: 0 ^ 0 is undefined. Using 1 to substitute.\n");
return 1;
}
else
return 0;
}
if (a != 0 && c == 0)
return 1;
for (int i = 0; i < abs(c); i++)
base *= a;
if (c < 0)
base = 1 / base;
return base;
}