1. 质数
#include <iostream>
using namespace std;
int main()
{
int a ;
cin >> a;
for( int i = 2; i <= a; i++)
{
if(i == a)
{
cout << "是质数" << endl; //循环到这个数本身都还没有break循环,质数
break;
}
if( a % i == 0) //如果能整除起码一个数,都不是质数,直接break输出
{
cout << "不是质数" << endl;
break;
}
}
return 0;
}
2,输入数组最大最小数
#include <iostream>
using namespace std;
int main() {
int arr[6] = { 0 };
int len = sizeof(arr) / sizeof(arr[0]); //这个方法很重要!!!
int max = 0; //从数组的第一个数开始遍历
int min = 0;
for (int i = 0; i < len; i++) {
cin >> arr[i];
if(arr[max]<arr[i]) //如果只算最大,也可以if(arr[i]>max) max = arr[i]
max=i;
if(arr[min]>arr[i]) //最小值不可以用上面那个,因为min的值是0,不可能比他还小了
min = i;
}
cout<<arr[min]<<" "<<arr[max]<<endl;
// write your code here......
return 0;
}
这个题的主要思路就是,从第一个元素开始和每一个元素进行比较,我们设max min 都是0,就代表着第一个元素,然后比较完把需要输出的最大或者最小值从i赋给max min
3.实现整个数组交换元素如123456到654321
#include <iostream>
using namespace std;
int main() {
int arr[6] = { 0 };
int len = sizeof(arr) / sizeof(arr[0]); //确定数组长度方便遍历输出
for (int i = 0; i < len; i++) {
cin >> arr[i]; //输入数组的元素
}
cout << "[";
for (int i = 0; i < len; i++) {
if (i == len - 1) {
cout << arr[i] << "]" << endl; //在最后一个元素输出后把]加上
break;
}
cout << arr[i] << ", "; //输出所有元素
}
int start = 0;
int temp;
int end = sizeof(arr) / sizeof(arr[0])-1;
while(start<end){
temp=arr[start];
arr[start]=arr[end]; //实现最后一个和第一个交换,直到start<end
arr[end]=temp;
start++;
end--;
}
cout << "[";
for (int i = 0; i < len; i++) {
if (i == len - 1) {
cout << arr[i] << "]" << endl;
break;
}
cout << arr[i] << ", ";
}
return 0;
}
4.冒泡排序
#include <iostream>
using namespace std;
int main() {
int arr[6] = { 0 };
int len = sizeof(arr) / sizeof(int);
for (int i = 0; i < len; i++) {
cin >> arr[i];
}
for(int i = 0;i<len-1;i++){ //要比较len-1次
for(int j = 0;j<len-1-i;j++){ //比较的时候前面比较过得不用比了len-1再减去比过的i
if(arr[j]>arr[j+1]){
swap(arr[j],arr[j+1]);
}
}
}
for(int i = 0;i<len;i++)
cout<<arr[i]<<" ";
return 0;
}