开发者学堂课程【C语言学习教程:函数练习1】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/387/detail/4925
函数练习1
1.设计函数 min(x,y),返回两个 double 数值中的较小的数值,同时写一个测试,同时写一个测试程序测试该函数.
#include <stdio.h>
double min(double x,double y){
return x<y?x:y; }
int main(int argc,const char* argv[])
double num1 =3.67;
double num2 = 4.5;
double resuLt = min(num2,num1);
printf("min = %.2fn", result);
}
2.设计函数 chine(ch,i,j),实现指定字符在 i 列到 j 列的输出,并测试.
一步:
//
#include <stdio.h>
double min(double x,double y) {
return x<y?x:y;
}
void chline(char ch,int i,int j) {
for (int m=0;m<i;m++) {
for (int n=0; n<j; n++) {
printf("%C ",ch) ;
}
putchar( 'ln') ;l
}
}
二步:
double num1 = 3.67;
double num2 = 4.5;
double result = min( num2 , num1) ;
printf("min = %.2f\n", result);
chline('*', 5,8);
// insert code here. ..
printf("Hello,World!\n") ;
return 0;i
}
3.两数值的谐均值可以这样计算:首先对两数值的倒数取平均值,然后再取倒数编写一个带有两个double参数的函数,计算着两个参数的谐均值.
一步:
printf("%C ",ch) ;
}
putchar('\n') ;
}
}
double myFunc1(double num1, double num2) {
double sum = 1/num1 + 1/num2;
double ave = sum/2;
return 1/ave ;
I
}
int main(int argc,const char * argv[]) {
double num1 = 3.67;
double num2 = 4.5:
二步:
int main(int argc, const char * argv[]) {
double num1 = 3.67;
double num2 = 4.5;
double result = min( num2, num1) ;
printf("min = %.2f\n", result);
chline('*', 5,8);
result = myFunc1(3.5, 4.8);
printf("谐均值%.2f\n", result)
// insert code here. ..
4.编写一个程序,使其从标准输入读取字符,直到遇到文件结尾.对于每个字符程序需要检查并报告该字符是否是一个字母.如果是的话,程序还应报告该字母表中的位置.例如:c和C的字母位置都是3.可以实现这样一个函数:接受一个字符参数,如果该支付为字母则返回该字母的数值位置,否则返回-1.
一步:
double myFunc1(double num1, double num2) {
double sum = 1/num1 + 1/num2;
double ave = sum/2;
return 1/ave;
}
int myFunc2(char num) {
if (num<='z '&&num>='a') {
return num- 'a'+1;
}else if (num<= 'Z' &&num>='A') {
return num-'A'+1;
}else{
return -1;|
}
}
二步:
char temp;
scanf ("%C" , &temp) ;
int num = 0;
while_ (temp != '\n') {
if(num!=0){
getchar();
scanf ("%C" , &temp) ;
}
num++;
int. number = myFunc2(temp);
if (number != -1) {
printf("是-个字母位置%d\n" , number);
}else if (temp == '\n'){
}else{
printf("不是一个字母\n");
}
}
// insert code here...
5.将之前分支和循环的习题中的各种功能要求封装在一个函数里面.