主页:xiaocr_blog
1.最小公倍数和最大公约数
#include<iostream>
using namespace std;
int main(){int a,b;cin>>a>>b;int r = a%b;while (r!=0){a = b;b = r;r = a%b;}cout<<b<<endl;return 0 ;
}
#include<iostream>
using namespace std;
int main(){cout<<"请输入两个正整数"<<endl;int num1,num2;cin>>num1>>num2;int temp = num1%num2;int ret1 = num1;int ret2 = num2;while(temp!=0){num1 = num2;num2 = temp;temp = num1%num2;}cout<<ret1<<"和"<<ret2<<"的最大公约数是:"<<num2<<endl;int ret = ret1*ret2/num2;cout<<ret1<<"和"<<ret2<<"的最小公倍数是:"<<ret; return 0;
}
2.素数查询
#include<iostream>
#include<cmath>
using namespace std;
int main() {cout << "请输入区间的端点" << endl;int begin, end;cin >> begin >> end;for (int i = begin; i <= end; i++) {int x = 2;while (x <= floor(sqrt(i)) && (i % x != 0)) {x++;}if (x > floor(sqrt(i))) {cout << i << "\t";}}return 0;
}
3.除去多余空格
#include<iostream>
#include<cstdio>
char st[200];
using namespace std;
int main() {//字符串读入型while (scanf("%s", &st) == 1) {printf("%s", st);}return 0;
}
4.阶乘之和
#include<iostream>
using namespace std;
int main() {cout << "请输入阶乘求和区间" << endl;int begin, end;cin >> begin>>end;int sum = 0;for (int i = begin; i <= end; i++) {//每次将fac复原int fac=1;for (int j = 1; j <= i; j++) {fac *= j;}//一轮结束即求和sum += fac;}cout << "求和结果是:" << sum;return 0;
}
5.合数分解成若干质因数
#include<iostream>
using namespace std;int main() {cout << "请输入一个合数" << endl;int num, i = 2;cin >> num;cout << num << "=";do{while (num% i == 0) {cout << i;num /= i;if(num!=1)cout << "*";}i++;} while (num != 1);return 0;
}
6.数据去重操作
#include<iostream>
using namespace std;
int main() {int a[101];int n,i,j,k;cout << "输入数据个数" << endl;cin >> n;for (i = 1; i <= n; i++) {cin >> a[i];}for(i=1;i<n;i++){for(j=i+1;j<=n;j++){if(a[i]==a[j]){for(k =j;k<=n;k++){a[k]=a[k+1];}n--;j--;}}}for(i=1;i<=n;i++){cout<<a[i]<<" ";}return 0;
}
7.简单冒泡排序
void bubble(int arr[], int n) {for (int i = 1; i <= n - 1; i++) {for (int j = 1; j <= n - i; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp;}}}