详见视频课https://edu.csdn.net/course/detail/37018
1、比n小的最大质数
对于给定的n,求比n小的质数中最大的一个
质数是指大于1的自然数,除了1和它自身外,不能被其他自然数整除的数。
输入
一个整数n(2<n<1000)
输出
一个整数,即题目要求的解。
样例输入 100
样例输出 97
#include<iostream>
using namespace std;
bool isPrime(int x){
for(int i=2;i<x;i++){
if(x%i==0)
return false;
}
return true;
}
int main(){
int n;
cin>>n;
while(n>0){
if(isPrime(n)){
cout<<n;
break;
}
n--;
}
return 0;
}
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
for(int i=2;i<n;i++){
if(n%i==0){
n=n-1;
}
}
cout<<n;
return 0;
}
2、计算成绩
给定两个数a,b,计算它们的乘积
输入 一行两个整数a,b,以空格隔开。0<a,b<10的8次方
输出 一个整数,表示a,b的乘积。
样例输入 123456 123456
样例输出 15241383936
3、交换输出
输入两个整数a,b,将它们交换输出
输入 一行两个整数a、b,以空格分割。0<a<108 0<b<1016
输出 一行两个整数b、a,以空格分割。
样例输入 123 12345654321
样例输出 12345654321 123
#include<iostream>
using namespace std;
int main(){
long long a,b;
cin>>a>>b;
cout<<b<<" "<<a;
}
4、满足条件的数的累加
现有n个整数,将其中个位数为k的数进行累加求和。
输入 第一行2个整数n、k,以空格隔开。(0<n<1000,0<=k<=9) 第二行n个非负整数,以空格隔开,每个数不大于100000。
输出 输出满足题目要求的累加和。
样例输入
10 7
2 5 7 17 11 18 4 27 1 7
样例输出
58
#include<iostream>
using namespace std;
int main(){
int n,k,a,sum=0;
cin>>n>>k;
for(int i=0;i<n;i++){
cin>>a;
if(a%10==7)
sum+=a;
}
cout<<sum;
return 0;
}
5、数字判断
输入一个字符,如何输入的字符是数字,输出yes,否则输出no
输入 一个字符
输出 如何输入的字符是数字,输出yes,否则输出no 样例1输入
样例1输入
5
样例1输出
yes
样例2输入
A
样例2输出
no
#include<iostream>
using namespace std;
int main(){
char ch;
cin>>ch;
if(ch>='0'&&ch<='9'){
cout<<"yes";
}else{
cout<<"no";
}
return 0;
}