您的位置:首页 > 其它

算法训练 数组查找及替换

2018-01-29 21:41 302 查看


思路:给你一组数和一个数b,将它们当中能够整除b的数去除掉,并将去除后剩余的数进行排序,然后将排好的数输出,这里要注意的是如果有ASCII正好在65到90之间的就将它们按照大写字母输出(这里用到了强制类型转换)

不多说了上代码:

#include<iostream>
#include<algorithm>
#include<string>
#include<cstring>
#include<stack>
#include<queue>
#include<cmath>
using namespace std;
int main() {
int n, b;
cin >> n >> b;
int array[100];
int temp;
int num=0;//用来记录真正输入的数的个数
//直接在输入的时候就判断是否应该删除!!!
for (int i = 0; i < n;i++) {
cin >> temp;
if (temp%b!=0) {
array[num] = temp;
num++;
}
}
//就用冒泡去写了
for (int i = 0; i < num;i++) {
for (int j = 0; j < num-i-1;j++) {//num-i-1再减去1是为了防止越界
if (array[j]>array[j+1]) {
int bet;
bet = array[j];
array[j] = array[j + 1];
array[j + 1] = bet;
}
}
}
for (int i = 0; i < num; i++) {
if (array[i]>=(int)'A'&&array[i] <= (int)'Z') {
cout << (char)array[i] << " ";//强制类型转换!
}
else {
cout << array[i] << " ";
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: