【电子学会真题】青少年软件编程(C语言)等级考试试卷(一级) 2021年9月

试卷下载

pdf 格式下载:https://download.csdn.net/download/SHUTIAN2010/88255543
word 格式下载:https://download.csdn.net/download/SHUTIAN2010/88255558


1.计算乘积

一行两个整数a、b,以空格分隔。(0<a,b<108)

输入

一行两个整数a、b,以空格分隔。(0<a,b<108)

输出

输出一个整数,表示a、b的乘积。

样例输入

1.123456 123456

样例输出

1.15241383936

难度:★☆☆☆☆

正确答案:

#include 
using namespace std;

int main(){
	long long a, b;
	
	cin >> a >> b;
	
	cout << a * b; 

	return 0;
}

2.交换输出

输入两个整数a、b,将他们交换输出。

输入

一行两个整数a、b,以空格分隔。0<a<108,0<b<1016

输出

一行两个整数b、a,以空格分隔。

样例输入

1.123 12345654321

样例输出

1.12345654321 123

难度:★☆☆☆☆

正确答案:

#include 
using namespace std;

int main(){
	long long a, b;
	
	cin >> a >> b;
	
	cout << b << ' ' << a; 

	return 0;
}

3.满足条件的数的累加

现有n个整数,将其中个位数为k的数进行累加求和。

输入

第一行两个整数n、k,以空格分隔。(0<n<1000,0≤k≤9)第二行n个非负整数,以空格分隔,每个数不大于100000。

输出

输出满足题目要求的累加和。

样例输入

1.107
2.257 17 11 18 4 27 1 7

样例输出

1.58

难度:★☆☆☆☆

正确答案:

#include 
using namespace std;

int main(){
	int n, k, x, s=0;
	
	cin >> n >> k;
	
	for(int i=1; i<=n; i++){
		cin >> x;
		if(x%10 == k){
			s = s + x;
		}
	}
	
	cout << s;

	return 0;
}

4.比n小的最大质数

对于给定的n,求比n小的质数中最大的一个。
质数是指一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数。

输入

一个整数n。(2<n<10000)

输出

一个整数,即题目要求的解。

样例输入

1.100

样例输出

1.97

难度:★☆☆☆☆

正确答案:

#include 
using namespace std;

int main(){
	int n, i, j, t;
	bool prime;
	
	cin >> n;
	
	for(i=n; i>=2; i--){
		prime = true;
		for(j=2; j<=i-1; j++){
			if(i % j == 0){
				prime = false;
				break;
			}
		}
		if(prime == true){
			cout << i;
			break;
		}
	}

	return 0;
}

5.数字判断

输入一个字符,如果输入的字符是数字,输出yes,否则输出no

输入

一个字符

输出

如果输入的字符是数字,输出yes,否则输出no

样例输入

样例1输入:

1.5

样例2输入:

A

样例输出

样例1输出:

yes

样例2输出:

no

难度:★☆☆☆☆

正确答案:

#include 
using namespace std;

int main(){
	char ch;
	
	cin >> ch;
	
	if(ch>='0' && ch <='9'){
		cout << "yes";
	}else{
		cout << "no"; 
	}

	return 0;
}

你可能感兴趣的:(中国电子学会C语言考级真题,c语言,算法,数据结构)