Enter the operation of your choice: a. add s. subtract m. multiply d. divide q. quit q Bye.
#include<> #include<>
float get_float(void); char get_first(void);
int main(void) {
char select; float num1,num2; while(1) {
printf(\ printf(\ printf(\ printf(\
select = get_first();
if( select != 'a' && select != 's' && select != 'm' && select != 'd') {
printf(\ break; }
printf(\ num1 = get_float();
printf(\ num2 = get_float();
while( select == 'd' && num2 == 0) {
printf(\ num2 = get_float(); }
switch(select) {
case 'a': printf(\ case 's': printf(\
case 'm': printf(\ case 'd': printf(\ default : break; } }
return(0); }
float get_float(void) n\
printf(\ }
while ( getchar() != '\\n'); return num; }
char get_first(void) 计函数 min(x,y),返回两个double数值中较小的数值,同时用一个简单的驱动程序测试该函数。
#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
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<> #include<> int ABC(char ch); 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;