C语言练手小代码---two

本文介绍了一个使用C语言编写的简单程序,旨在帮助初学者实践基本语法和编程思维。通过阅读和理解代码,你可以学习到C语言中的变量声明、条件判断以及循环控制等核心概念。
摘要由CSDN通过智能技术生成

1. 给定两个整形变量的值,将两个值的内容进行交换。
#define _CRT_SECURE_NO_WARNINGS ch
#include<stdio.h>
#include<Windows.h>

int main(){
	int a = 10;
	int b = 20;
	int temp = 0;
	temp = a;
	a = b;
	b = temp;
	printf("a=%d ", a);
	printf("b=%d ", b);
	system("pause");
	return 0;
}

运行结果:

2. 不允许创建临时变量,交换两个数的内容【两种方法来实现】
#define _CRT_SECURE_NO_WARNINGS ch
#include<stdio.h>
#include<Windows.h>

int main(){
	int a = 10;
	int b = 20;
	a = a + b;//如果a和b为int的最大值,则可能产生溢出,所以下边介绍一种采用位运算的方法来实现
	b = a - b;
	a = a - b;
	printf("a=%d ", a);
	printf("b=%d ", b);
	system("pause");
	return 0;
}
#define _CRT_SECURE_NO_WARNINGS ch
#include<stdio.h>
#include<Windows.h>

int main(){
	int a = 10;
	int b = 20;
	a = a^b;
	b = a^b;
	a = a^b;
	printf("a=%d ", a);
	printf("b=%d ", b);
	system("pause");
	return 0;
}

运行结果:

3.求10 个整数中最大值。

#define _CRT_SECURE_NO_WARNINGS ch
#include<stdio.h>
#include<Windows.h>

int main(){
	int arr[10] = { 0, 1, 2, 4, 5, 6, 7, 3, 9, 8 };
	int max = arr[1];
	int i = 0;
	int sz = sizeof(arr)/sizeof(arr[0]);
	for (i = 0; i < sz; i++){
		if (arr[i]>max){
			max = arr[i];
		}
	}
	printf("%d\n", max);
	system("pause");
	return 0;
}

运行结果:

4.将三个数按从大到小输出。(此处采用了冒泡排序)

#define _CRT_SECURE_NO_WARNINGS ch
#include<stdio.h>
#include<Windows.h>

int main(){
	int arr[3] = { 0, 1, 2};
	int i = 0;
	int j = 0;
	int temp = 0;
	int sz = sizeof(arr)/sizeof(arr[0]);
	for (i = 0; i < sz-1; i++){
		for (j = 0; j < sz - i; j++){
			if (arr[j] < arr[j + 1]){
				temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
	for (i = 0; i < sz; i++){
		printf("%d ",arr[i]);
	}
	system("pause");
	return 0;
}

运行结果:

5.求两个数的最大公约数。(注:最小公倍数=(m*n)/最大公约数)

#define _CRT_SECURE_NO_WARNINGS ch
#include<stdio.h>
#include<Windows.h>
//辗转相除法
int main(){
	int m = 24;
	int n = 18;
	while (m%n){
		int temp = m;
		m = n;
		n = temp%n;
	}
	printf("%d ", n);
	system("pause");
	return 0;
}

结果:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值