输入两个整数,要求输出其中值较大者。要求用函数来找大数。

/* p176 例7.2 输入两个整数,要求输出其中值较大者。要求用函数来找大数。

(1)函数名:应是见名知意,反应函数的功能,今定名为max

(2)函数的类型:由于给定的两个数是整数,显然其中大者也是整数,也就是说max函数的值(即返回主调函数的值)应该是整型。

(3)max函数的参数个数和类型:max函数应当有两个参数,以便从主函数接受两个整数,显然,参数的类型应当是整型。

在调用max函数时,应当给出两个整数作为实参,传给max函数中的两个形参
*/

//编写程序:

//(1)先编写max函数:
int max(int x, int y) //定义max函数,有两个参数
{
int z; //定义临时变量z
z=x>y? x:y; //把x和y中最大值赋给z
return z; //把z作为max函数的值带回main函数

}

//(2)再编写主函数
#include<stdio.h>
int main()
{
int max(int x,int y); //对max函数的声明
int a, b, c;
printf("please enter two integer numbers:"); //提示输入数据
scanf("%d,%d",&a,&b); //输入两个整数
c=max(a,b); //调用max函数,有两个实参。大数赋给变量c
printf("max is %d\n",c); //输出大数c
return 0;
}

运行结果:

//将上面代码稍作改动,将函数和变量类型改为float类型,就可以比较小数了

#include<stdio.h>
int main()
{
float max(float x,float y); //对max函数的声明
float a, b, c;
printf("please enter two numbers:"); //提示输入数据
scanf("%f,%f",&a,&b); //输入两个数字
c=max(a,b); //调用max函数,有两个实参。大数赋给变量c
printf("max is %.2f\n",c); //输出大数c
return 0;
}

float max(float x, float y) //定义max函数,有两个参数
{
float z; //定义临时变量z
z=x>y? x:y; //把x和y中最大值赋给z
return z; //把z作为max函数的值带回main函数

}

运行结果:

原文地址:https://www.cnblogs.com/ddhdd/p/8638258.html

时间: 2024-10-28 21:39:06

输入两个整数,要求输出其中值较大者。要求用函数来找大数。的相关文章

输入两个整数,放入到a与b变量中去,如果a&gt;b就将a与b中的值进行交换,否则就不交换。

import java.util.Scanner; /** * @author 蓝色以太 输入两个整数,放入到a与b变量中去,如果a>b就将a与b中的值进行交换,否则就不交换. */ public class Change { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入两个整数:"); int a = sc.nextInt

【C语言】用函数指针变量完成:输入两个整数,让用户选择函数,选择1输出较大的数,选择2输出较小的数

<pre name="code" class="cpp">//用函数指针变量完成:输入两个整数,让用户选择函数,选择1输出较大的数,选择2输出较小的数 #include <stdio.h> int max(int x,int y) { return (x>y)?x:y; } int min(int x,int y) { return (x>y)?y:x; } int main() { int (*p)(int,int); int

排序,求几个最值问题,输入n个整数,输出其中最小的k个元素。

看完两个求最大值算法之后的一些感想. 如果想直接看算法的可以跳过.但是我觉得我这些想法还是比较有用的,至少对我将来的算法设计是这样的. 算法的功能越强大,必然意味着速度慢,因为根据丛林法则,那种慢又功能少的算法会被淘汰. 所以,(注意了!!),如果我们在使用一个算法的时候感觉到它造成的结果满足我们的使用,而且超出了,我们的使用,那么我们就很可能浪费了时间,降低了效率. 例如这个1000个数中求最大的10个的算法: 如果排序,取前10个.发现后面的白排序了,根本没用到.参照加粗行,也许可以有更快的

[华为]输入n个整数,输出其中最小的k个

链接:https://www.nowcoder.com/questionTerminal/69ef2267aafd4d52b250a272fd27052c来源:牛客网 输入n个整数,输出其中最小的k个. 详细描述: 接口说明 原型: bool GetMinK(unsignedint uiInputNum, int * pInputArray, unsignedint uiK, int * pOutputArray); 输入参数: unsignedint uiInputNum //输入整数个数 i

写一个方法,输入两个正整数,输出在两个正整数范围内即被3整除,又被7整除的正整数

import java.util.Scanner;/* * @写一个方法,输入两个正整数,输出在两个正整数范围内即被3整除,又被7整除的正整数. * */public class Test5 { static Boolean boo=false; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); long scan = scanner.nextLong(); long scan1

c语言:输入两个整数m和n,计算需要改变m的二进制表示中的多少位才能得到n

输入两个整数m和n,计算需要改变m的二进制表示中的多少位才能得到n? 解:第一步求这两个数的异或运算,将异或运算结果存起来:第二步统计这个运算结果当中1的位数 程序: #include<stdio.h> int count(int m,int n) { int t,count=0; t = m^n; while (t) { count++; t=t&(t-1); } return count; } int main() { int num1,num2,ret=0; printf(&qu

编程题:输入10个整数,输出最大数。

#include<stdio.h> void main() { int i,array[10],big;     /*给数组中所有元素赋值*/ for(i=0;i<10;i++) scanf("%d",&array[i]); /*找出数组中最大的元素*/ big=array[0]; for(i=1;i<10;i++) if(array[i]>big) big=array[i]; printf("The biggest is %3d\n&q

输入两个整数n和m,从数列1,2,3,……n中随意取几个数,使其和等于m 转载

题目:编程求解,输入两个整数n和m,从数列1,2,3,--n中随意取几个数,使其和等于m.要求将所有的可能组合列出来. 分析:分治的思想.可以把问题(m,n)拆分(m - n, n -1)和(m, n - 1). 注意点:1.n大于m时,可直接从n = m出开始搜索 2.结束条件:n < 1 || m < 1 3.打印输出结果.注意打印输出结果并不代表函数调用结束,以n = 7 和 m = 10为例,7.3和7.2.1都是一种结果,不能得到7.3的时候终止.打印输出的条件是n = m 程序代码

输入两个时间戳,计算差值

<?php date_default_timezone_set("Asia/Shanghai"); //date_default_timezone_set("UTC"); //date_default_timezone_set("PRC"); //输入两个时间戳,计算差值,也就是相差的小时数,如返回2:10,则表示输入的两个时间相差2小时10分钟  function hours_min($start_time,$end_time){  if