3.31 C语言练习(求两个整数之和;调用函数两个整数的较大者)

【练习一】

题目要求:
    要求在屏幕上输入以下信息:
        This is a C program. 
解题思路:
    在主函数中用printf函数原样输出信息。
#include                      //这是编译预处理指令 

int main()                             //定义主函数 
{                                      //函数开始的标志 
	printf("This is a C program.\n");    //输出所指定的一行信息 
	
	return 0;                          //函数执行完毕时返回函数值0 
}                                      //函数结束的标志 

3.31 C语言练习(求两个整数之和;调用函数两个整数的较大者)_第1张图片

【练习二】

题目要求:
    求两个整数之和
解题思路:
    定义a和b分别存放两个整数,定义sum用来存放计算结果。
#include 

int main()
{
	int sum, a = 129, b = 7;                    //本行是对函数的声明和赋初值 
	
	printf("%d + %d = %d\n", a, b, sum = a + b);  //进行a+b的运算,存放sum里,并输出 
	
	return 0;
} 

3.31 C语言练习(求两个整数之和;调用函数两个整数的较大者)_第2张图片

【练习三】

题目要求:
    求两个整数的较大者,调用函数。
解题思路:
    用一个函数来实现求两个整数中的较大者,在主函数中调用此函数并输出。

解法一:

#include  

int Max;                                       //定义全局变量Max 

int main()
{
	void max(int x, int y);                    //函数声明 
	
	int a, b;                                  //定义变量a,b 
	
	printf("Please enter two integers: ");     //提示输入a,b 
	scanf("%d %d",&a,&b);                      
	
	max(a,b);                                  //调用max函数 
	
	printf("The largest integer is: %d",Max);  //输出结果 
	
	return 0;
}
void max(int x, int y)                         //定义max函数,不返回值,形参x,y 
{
	if(x>y)                                    //若x>y成立,把x的值赋给全局变量Max 
	{
		Max = x;
	}
	else                                       //若条件不成立,把y的值赋给全局变量Max 
	{
		Max = y;
	}
}

解法二

#include  

int main()
{
	int max(int x, int y);                          //函数声明 
	
	int a, b;                                       //定义变量a,b,Max 
	
	printf("Please enter two integers: ");          //提示输入a,b 
	scanf("%d %d",&a,&b);                      
	
	printf("The largest integer is: %d",max(a,b));  //调用max函数,输出结果 
	
	return 0;
}

int max(int x, int y)                               //定义max函数,函数类型为整型,形参x,y 
{
	int z;
	
	if(x>y)                                         //若x>y成立,把x的值赋给z 
	{
		z = x;
	}
	else                                            //若条件不成立,把y的值赋给z 
	{
		z = y;
	}
	
	return z;                                       //返回z的值 
}

解法三

#include 

int main()
{
	int max(int, int);                              //函数声明 
	
	int (*p)(int, int);                             //定义指向函数的指针变量p 
	int a, b, c;
	p = max;                                        //使p指向max函数 
	
	printf("Please enter two integers: ");
	scanf("%d %d",&a, &b);
	
	c = (*p)(a,b);                                  //通过指针变量调用max函数 
	
	printf("The largest integer is: %d",c);
	
	return 0;
}

int max(int x, int y)                               //定义max函数 
{
	int z;
	
	if(x>y)
	{
		z = x;
	}
	else
	{
		z = y;
	}
	return (z);
}

3.31 C语言练习(求两个整数之和;调用函数两个整数的较大者)_第3张图片

你可能感兴趣的:(3.31 C语言练习(求两个整数之和;调用函数两个整数的较大者))