C语言 练习

1.按顺序打印三个数

cs 复制代码
//按大小顺序打印三个数字
void Swap(int* px, int* py)
{
	int tmp = *px;
	*px = *py;
	*py = tmp;
}
int main()
{
	int a = 0;
	int b = 0;
	int c = 0;
	scanf("%d %d %d", &a, &b, &c);
	if (a < b)
	{
		Swap(&a,&b);
	}
	if (a < c)
	{
		Swap(&a,&c);
	}
	if (b < c)
	{
		Swap(&b, &c);
	}
	printf("%d %d %d\n", a, b, c);
	return 0;
}

2.打印1-100之间3的倍数

方法一:

cs 复制代码
//打印1-100之间3的倍数
int main()
{
	int i = 0;
	for (i = 1; i <= 100; i++)
	{
		if (i % 3 == 0)
		{
			printf("%d ", i);
		}
	}
	return 0;

}

方法二:

cs 复制代码
//打印1-100之间3的倍数
int main()
{
	int i = 0;
	for (i = 3; i <= 100; i+=3)
	{
		printf("%d ", i);
	}
	return 0;

}

3.求两个数的最大公约数

方法一:

cs 复制代码
//求两个数的最大公约数
//暴力求解
int main()
{
	int a = 0;
	int b = 0;
	scanf("%d %d", &a, &b);
	int min = (a < b) ? a : b;
	int m = min;
	while (1)
	{
		if (a % m == 0 && b % m == 0)
		{
			
			break;
		}
		m--;
	}
	printf("%d\n", m);

	return 0;
}

方法二:

cs 复制代码
//辗转相除法
int main()
{
	int a = 0;
	int b = 0;
    int c = 0;
	scanf("%d %d", &a, &b);
	while (c=a%b)
	{
		a = b;
		b = c;
	}
	printf("%d\n", b);
	return 0;
}

4.编写程序算出1-100之间有多少个数字9

cs 复制代码
//编写程序算出1-100之间有多少个数字9
//9 19 29 39 49 59 69 79 89 99
//90 91 92 93 94 95 96 97 98 
int main()
{
	int count = 0;
	int i = 0;
	for (i = 1; i <= 100; i++)
	{
		//计算个位是9
		if (i % 10 == 9)
			count++;
		//计算十位是9
		if (i / 10 == 9)
			count++;
	}
	printf("%d\n", count);
	return 0;
}

5.计算1/1-1/2+1/3-1/4+1/5......+1/99-1/100的值,打印出结果

cs 复制代码
//计算1/1-1/2+1/3-1/4+1/5......+1/99-1/100的值,打印出结果
//分子总是1
//分母是1-100
int main()
{
	int i = 0;
	double sum = 0;
	int flag = 1;
	for (i = 1; i <= 100; i++)
	{
		sum = sum + flag * 1.0 / i;
		flag = -flag;
	}
	printf("%lf\n", sum);
	return 0;
}
相关推荐
飞机和胖和黄40 分钟前
考研之王道C语言第三周
c语言·数据结构·考研
yyy(十一月限定版)42 分钟前
寒假集训4——二分排序
算法
星火开发设计42 分钟前
类型别名 typedef:让复杂类型更简洁
开发语言·c++·学习·算法·函数·知识
醉颜凉1 小时前
【LeetCode】打家劫舍III
c语言·算法·leetcode·树 深度优先搜索·动态规划 二叉树
达文汐1 小时前
【困难】力扣算法题解析LeetCode332:重新安排行程
java·数据结构·经验分享·算法·leetcode·力扣
一匹电信狗1 小时前
【LeetCode_21】合并两个有序链表
c语言·开发语言·数据结构·c++·算法·leetcode·stl
User_芊芊君子1 小时前
【LeetCode经典题解】搞定二叉树最近公共祖先:递归法+栈存路径法,附代码实现
算法·leetcode·职场和发展
算法_小学生1 小时前
LeetCode 热题 100(分享最简单易懂的Python代码!)
python·算法·leetcode
执着2591 小时前
力扣hot100 - 234、回文链表
算法·leetcode·链表
Gorgous—l1 小时前
数据结构算法学习:LeetCode热题100-多维动态规划篇(不同路径、最小路径和、最长回文子串、最长公共子序列、编辑距离)
数据结构·学习·算法