/* 创建时间:20171228
创建人:fangweijun(773714759@qq.com)
功能:用函数实现输入两个整数,要求输出其中值最大者
位置:C程序设计(第四版)2010年6月第四版 176页例7.2
*/
#include<stdio.h>
int main()
{
int max(int x,int y);
int a,b,c;
printf("please enter two integer numbers:");
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max is %d\n",c);
return 0;
}
int max(int x,int y)
{
int z;
z=x>y?x:y;
return(z);
}
/*Dev-c++输出结果:
please enter two integer numbers:88,0
max is 88
*/
/* 创建时间:20171228
创建人:fangweijun(773714759@qq.com)
功能:用函数实现输入两个整数,要求输出其中值最大者(函数类型决定返回值类型)
位置:C程序设计(第四版)2010年6月第四版 178页例7.3
*/
#include<stdio.h>
int main()
{
int max(float x,float y);
float a,b,c;
printf("please enter two integer numbers:");
scanf("%f,%f",&a,&b);
c=max(a,b);
printf("max is %f\n",c);
return 0;
}
int max(float x,float y)//函数类型是整型
{
float z;
z=x>y?x:y;
return(z);//返回类型是浮点型
}
/*Dev-c++输出结果:
please enter two integer numbers:1.5,2.6
max is 2.000000
*/
/* 创建时间:20171228
创建人:fangweijun(773714759@qq.com)
功能:输入两个实数,用一个函数求出它们之和
位置:C程序设计(第四版)2010年6月第四版 180页例7.4
*/
#include<stdio.h>
int main()
{
float add(float x,float y);//或float add(float,float);
float a,b,c;
printf("Please enter a and b:");
scanf("%f,%f",&a,&b);
c=add(a,b);
printf("sum is %f\n",c);
return 0;
}
float add(float x,float y)
{
float z;
z=x+y;
return(z);
}
/*Dev-c++输出结果:
Please enter a and b:5,3
sum is 8.000000
*/
/* 创建时间:20171228
创建人:fangweijun(773714759@qq.com)
功能:输入4个整数,找出其中最大的数。用函数的嵌套调用来处理
位置:C程序设计(第四版)2010年6月第四版 183页例7.5
*/
#include<stdio.h>
//方法一:
//int main()
//{
// int max4(int a,int b,int c,int d);//声明函数
// int a,b,c,d,max;
// printf("Please enter 4 interger numbers:");
// scanf("%d %d %d %d",&a,&b,&c,&d);
// max=max4(a,b,c,d);
// printf("max=%d \n",max);
// return 0;
//}
//int max4(int a,int b,int c,int d)//返回四个整数的最大值 ,定义函数
//{
// int max2(int a,int b);//声明函数
// int m;
// m=max2(a,b);//返回a,b最大值
// m=max2(m,c);//返回a,b,c最大值
// m=max2(m,d);//返回a,b,c,d最大值
// return(m);
//}
//int max2(int a,int b)//返回两个整数的最大值
//{
// if(a>=b)
// return a;
// else
// return b;
//}
#include<stdio.h>
//方法二(改进):
int main()
{
int max4(int a,int b,int c,int d);//声明函数
int a,b,c,d,max;
printf("Please enter 4 interger numbers:");
scanf("%d %d %d %d",&a,&b,&c,&d);
max=max4(a,b,c,d);
printf("max=%d \n",max);
return 0;
}
int max4(int a,int b,int c,int d)//返回四个整数的最大值 ,定义函数
{
int max2(int a,int b);//声明函数
return max2(max2(max2(a,b),c),d);
}
int max2(int a,int b)//返回两个整数的最大值
{
return (a>b?a:b);
}
/*Dev-c++输出结果:
Please enter 4 interger numbers:11 55 2 999
max=999
*/
/*Dev-c++输出结果:
Please enter 4 interger numbers:88 22 5 1
max=88
*/
/* 创建时间:20171228
创建人:fangweijun(773714759@qq.com)
功能:有五个学生,问第5个学生年龄,他说比第4个学生大2岁;
问第4个学生年龄,他说比第3个学生大2岁;
问第3个学生年龄,他说比第2个学生大2岁;
问第2个学生年龄,他说比第1个学生大2岁;
问第1个学生年龄,他说10岁;
请问第5个学生多达?
位置:C程序设计(第四版)2010年6月第四版 185页例7.6
*/
#include<stdio.h>
int main()
{
int age(int n);//声明函数
printf("No.5,age:%d\n",age(5));
return 0;
}
int age(int n)//定义函数
{
int c;
if(n==1)
c=10;
else
c=age(n-1)+2;//比前一个学生大两岁
return(c);
}
/*Dev-c++输出结果:
No.5,age:18
*/
/* 创建时间:20171228
创建人:fangweijun(773714759@qq.com)
功能:用递归方法求n!
公式:n!(n=0,1)=1;n!(n>1)=n(n-1)! (0!=1是一种规定)
位置:C程序设计(第四版)2010年6月第四版 187页例7.7
*/
#include<stdio.h>
int main()
{
int fac(int n);
int n;
int y;
printf("input an integer number:");
scanf("%d",&n);
y=fac(n);
printf("%d!=%d\n",n,y);
return 0;
}
int fac(int n)
{
int f;
if(n<0)
printf("n<0,data error!");
else if(n==0 || n==1)//0!=1是一种规定
f=1;
else
f=fac(n-1)*n;
return(f);
}
/*Dev-c++输出结果:
input an integer number:10
10!=3628800
*/
/* 创建时间:20171228
创建人:fangweijun(773714759@qq.com)
功能:汉诺塔问题
位置:C程序设计(第四版)2010年6月第四版 189页例7.8
*/
#include<stdio.h>
C程序设计 第四版(谭浩强)-学习笔记-第八天
最新推荐文章于 2023-05-07 16:36:06 发布