1.用异或来交换两个变量的值,不借助临时变量 2.求10个整数中的最大值 3.比较三个数的大小

1>用C语言编译—用异或来交换两个变量的值,不借助临时变量

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<Windows.h>
int main()
{
	int i, j;
	printf("输入两个要交换的数据:\n");
	scanf("%d%d", &i, &j);
	//i*i=0,j*j=0
	//任何数与0异或都是其本身
	//异或支持交换律
	i = i^j; //i=i^j;
	j = i^j; //j=i^j^j=i^0=i;
	i = j^i; //i=i^i^j=0^j=j;
	printf("交换后得到的数据为:\n");
	printf("%d %d", i, j);
	system("pause");
}

2>用C语言编译—求10个整数中的最大值

#include<stdio.h>
#include<Windows.h>
int Max()
{
	int  a[] = { 1, 11, 111, 2, 22, 222, 3, 33, 333, 4 };
	int num = sizeof(a) / sizeof(a[0]);
	int i = 1;
	int max = a[0];
	for (; i < num; i++)
	{
		if (a[i] > max)
		{
			max = a[i];
		}
	}
	return max;
}
int main()
{
	printf("%d\n", Max());
	system("pause");
}

3>用C语言编译—比较三个数的大小

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<Windows.h>
void ThreeData(int x,int y,int z)
{
	if (x > y){
		if (z > x){
			printf("%d %d %d \n", z, x, y);
		}
		else if (z > y){
			printf("%d %d %d \n", x, z, y);
		}
		else{
			printf("%d %d %d \n", x, y, z);
		}
	}
	else{
		if (z > y){
			printf("%d %d %d \n", z, y, x);
		}
		else if (z > x){
			printf("%d %d %d \n", y, z, x);
		}
		else{
			printf("%d %d %d \n", y, x, z);
		}
	}
}
int main()
{
	ThreeData(34, 35, 56);
	system("pause");
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值