【C语言】不使用大小于号,求出两数最大值

//不使用大小于号,求出两数最大值
#include <stdio.h>
#include <math.h>
double Max(double a, double b)
{
	double q = sqrt((a-b)*(a-b));
	return ((a + b) + q) / 2;
}
int main()
{
	printf("(5,8)大的数为:%.0f\n", Max(5, 8));
	printf("(0,4)大的数为:%.0f\n", Max(0,4));
	printf("(-2,3)大的数为:%.0f\n", Max(-2,3));
	printf("(-3,-6)大的数为:%.0f\n", Max(-3,-6));
	return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-13 23:54:47

【C语言】不使用大小于号,求出两数最大值的相关文章

【c语言】不用大与小与号,求两数最大值

// 不用大与小与号,求两数最大值 #include <stdio.h> int max(int a, int b) { int c = a - b; int d = 1 << 31; if ((c&d) == 0) { return a; } else { return b; } } int main() { printf("%d是大数\n", max(0, 2)); printf("%d是大数\n", max(3, 4)); pr

c编程:求出4&amp;#215;4矩阵中最大和最小元素值及其所在行下标和列下标,求出两条主对角线元素之和。

//求出4×4矩阵中最大和最小元素值及其所在行下标和列下标,求出两条主对角线元素之和 #include <stdio.h> int main() { int sum=0; int max,min; int max1,max2;//记录最大值的坐标 int min1,min2;//记录最小值的坐标 int i,j; int a[4][4]; //为数组赋值 for(i=0;i<4;i++) { for(j=0;j<4;j++) { scanf("%d",&

c编程:求出4&#215;4矩阵中最大和最小元素值及其所在行下标和列下标,求出两条主对角线元素之和。

//求出4×4矩阵中最大和最小元素值及其所在行下标和列下标,求出两条主对角线元素之和 #include <stdio.h> int main() { int sum=0; int max,min; int max1,max2;//记录最大值的坐标 int min1,min2;//记录最小值的坐标 int i,j; int a[4][4]; //为数组赋值 for(i=0;i<4;i++) { for(j=0;j<4;j++) { scanf("%d",&

java-第七章-数组-求出一些数的最小值

import java.util.Scanner; public class A04 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); double[] Price = new double[4]; double min = 0; System.out.println("请输入4家店的价格"); for

关于求出两个整形数组不同元素,要求效率最高

由于两个数组,一比较就会出现两次for循环,所以我能想到的就是组合求出现次数,这样子,就不会出现两次for循环,上代码,希望有看到的提出更好的方法 1 #include <iostream> 2 using namespace std; 3 4 void printarray(int *arr, int size) 5 { 6 if (arr == nullptr) 7 { 8 return; 9 } 10 cout << endl; 11 for (int i = 0; i &l

Java算法——求出两个字符串的最长公共字符串

问题:有两个字符串str1和str2,求出两个字符串中最长公共字符串. 例如:“acbbsdef”和"abbsced"的最长公共字符串是“bbs” 算法思路: 1.把两个字符串分别以行和列组成一个二维矩阵. 2.比较二维矩阵中行和列对应的每个点的字符是否相同,是设置这个点为1,否设置这个点为0. 3.通过查找值为1的最长对角线来找到最长公共字符串. 通过上面str1和str2两个字符串,分别得出以行和列组成的一个二维矩阵如下图: 从上图可以看到,str1和str2共有3个公共子串&qu

c语言代码编程题汇总: 求出一个随机数的阶乘,采用for循环实现

  求出一个随机数的阶乘,采用for循环实现 采用随机数的算法,程序更加灵活,程序代码如下: 1 /* 2 2017年3月5日10:10:46 3 功能:求出一个随机数的阶乘,采用for循环实现 4 */ 5 6 #include "stdio.h" 7 int main (void) 8 { 9 int i, n; 10 int m = 1; 11 12 printf ("请输入所求n的数值: "); 13 scanf ("%d",&n

【C语言】输入一组整数,求出这组数字子序列和中最大值

//输入一组整数.求出这组数字子序列和中最大值 #include <stdio.h> int MAxSum(int arr[],int len) { int maxsum = 0; int i; int j; for (i = 0; i < len; i++) { int thissum = 0; for (j = i; j < len; j++) { thissum += arr[j]; if (thissum>maxsum) maxsum = thissum; } } r

c语言:3种方法;求出0~999之间的所有“水仙花数”并输出。

方法一: #include <stdio.h> int main() { int i,j,k,n; printf("水仙花数:",n); for(n=100;n<1000;n++) { i=n/100; j=n/10-i*10; k=n%10; if(n==i*i*i+j*j*j+k*k*k) printf("%d\n ",n); } return 0; } 输出结果: 水仙花数:153 370 371 407 Press any key to c