#include
double min(double ,double );
int main(void) {
double x,y;
printf(\ scanf(\
printf(\ return(0); }
double min(double a,double b) {
return a
2.设计函数chline(ch, i, j),实现指定字符在i列到j列的输出,并用一个简单的驱动程序测试该函数。
#include
void chline(char , int , int );
int main(void) { int x,y; char ch;
printf(\ scanf(\
printf(\ scanf(\ chline(ch,x,y); return 0; }
void chline(char ch, int i, int j) { int k;
for(k=1; k
for( ; k<=j; k++) printf(\ printf(\}
3.编写一个函数。函数的3个参数是一个字符和两个整数。字符参数是需要输出的字符。第一个整数说明了在每行中该字符输出的个数,而第二个整数指的是需要输出的行数。编写一个调用该函数的程序。
#include
void chline(char , int , int );
int main(void) { int x,y; char ch;
printf(\ scanf(\
printf(\ scanf(\ chline(ch,x,y); return 0; }
void chline(char ch, int column, int row) { int x,y;
for(y=0; y for(x=0; x 4.两数值的谐均值可以这样计算:首先对两数值的倒数取平均值,最后再取倒数。编写一个带有两个double参数的函数,计算这两个参数的谐均值。 #include double calculate(double ,double ); int main(void) { double a,b; printf(\ scanf(\ printf(\ return 0; } double calculate(double x,double y) { return 1/( (1/x+1/y) / 2 ); } 5.编写并测试函数larger_of(),其功能是将两个double类型变量的数值替换成它们中的较大值。例如,larger_of(x,y)会把x和y中的较大数值重新赋给变量x和y #include void large_of(double *,double *); int main(void) { double a,b; printf(\ scanf(\ large_of(&a,&b); printf(\ return 0; } void large_of(double *x,double *y) { *x = *y = *x>*y? *x:*y; } 6.编写一个程序,使其从标准输入读取字符,直到遇到文件结尾。对于每个字符,程序需要检查并报告该字符是否是一个字母。如果是的话,程序还应报告该字母在字母表中的数值位置。例如,c和C的字母位置都是3。可以先实现这样一个函数:接受一个字符参数,如果该字符为字母则返回该字母的数值位置,否则返回-1。 #include int main(void) { char ch; printf(\ scanf(\ printf(\ return 0; } int ABC(char ch) { if(isalpha(ch)) return tolower(ch) - 'a' + 1 ; else return -1; } 7.在第6章“C控制语句:循环”的程序清单6.20中,函数power()的功能是返回一个double类型数的某个正整数次幂。现在改进该函数,使其能正确地计算负幂。同时,用该函数实现0的任何次幂为0,并且任何数值的0次幂为l。使用循环的方法编写该函数并在一个程序中测试它。 #include double power(double , int ); int main(void) { double x; int exp; printf(\ scanf(\ printf(\ return 0; } double power(double n, int p) { int i; double pow=1; if (p>0) for(i=1;i<=p;i++) pow *= n; else if(p<0) for(i=-1;i>=p;i--) pow /= n; else if(n != 0) pow = 1; else pow = 1 / n; //0的0次幂无意义,所以用1/0这个无意义数(1.#INF)代替 return pow; } 8.使用递归函数重做练习7。 #include double power(double , int ); int main(void) { double x; int exp; printf(\ scanf(\ printf(\ return 0; } double power(double n, int p) { int i; double pow=1; if (p>0)