1042: 数列求和3 和 1057: 素数判定 和 1063: 最大公约与最小公倍

发布时间:2024年01月09日

1042: 数列求和3

题目描述

求1-2/3+3/5-4/7+5/9-6/11+...的前n项和,结果保留3位小数。

输入

输入正整数n(n>0)。

输出

输出一个实数,保留3位小数,单独占一行。

样例输入?
5
样例输出?
0.917

#include<stdio.h>
int main(){
	int n;
	float flag = 1.0;
	float sum = 0;
	scanf("%d",&n);
	for(int i = 1; i<=n; i++){
		sum += flag*i/(2*i-1);
		flag *= -1;
	}
	printf("%.3f", sum);
	return 0;
}

运行结果截图:

?1057: 素数判定

题目描述

输入一个正整数n,判断n是否是素数,若n是素数,输出”Yes”,否则输出”No”。

输入

输入一个正整数n(n<=1000)

输出

如果n是素数输出"Yes",否则输出"No"。输出占一行。

样例输入?
2
样例输出?
Yes
#include<stdio.h>
int main(){
	int n;
	int flag = 1;
	scanf("%d",&n);
	if(n == 1){
		printf("No");
	}else{
		for(int i=2;i<=n/2;i++){
			if(n%i==0){
				flag = 0;
				break;
			}
		}
		if(flag){
			printf("Yes");
		}else{
			printf("No");
		}
	}
	return 0;
}

运行结果截图:

?1063: 最大公约与最小公倍

题目描述

输入两个正整数,输出其最大公约数和最小公倍数。

输入

输入两个正整数n和m(n,m<=1000000)。输入保证最终结果在int范围内。

输出

输出两个整数,用空格隔开。表示m和n的最大公约数和最小公倍数。

样例输入?复制
4 6
样例输出?复制
2 12
提示

注意运算过程中的溢出问题

#include<stdio.h>
int main(){
	int a, b;
	scanf("%d %d", &a, &b);
	for(int i = a>b?b:a;i>=1;i--){
		if(b%i==0&&a%i==0){
			printf("%d ", i);
			break;
		}
	}
	for(int i=a>b?a:b;;i++){
		if(i%a==0&&i%b==0){
			printf("%d", i);
			break;
		}
	}
	return 0;
}

运行结果截图:

文章来源:https://blog.csdn.net/apprentice_eye/article/details/135491631
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。