波波ny 2021-11-25 16:23 采纳率: 66.7%
浏览 52
已结题

SOS 改了好久但运行不出正确结果,捞捞 C++

编写程序将数组a和数组b中的素数合并到数组c中,然后对数组c中的数据,按从小到大顺序重新排列后输出。以此例子编写程序:
intaf5]={19,24,40,37,11},b[5]={3,17,9,7,20},c[10]={0};
要求:
1)编写一个判断素数的函数;
2)编写一个排序的函数;
(3)在主函数中调用上述两个函数实现题目要求。

```
曰#include<iostream>
#include
using namespace std:
//定义一个冒泡函数对数组c中数据升序排列
void  bubbleSort (int c, int len)
for(int i=0;i<len-1:i++){
for(int j=0;j<len-i-1;j++){
if(c[j]>c[j+1]){
int temp=c[j];
c[j]=c[j+1];
c[j+1]=temp;
int main(){
int a=[5]={19,24,40,37,11},b[5]={3,17,9,7,20};
//判断数组a中素数并将其放进c中
vectorc;
for(int i=0;i<sizeof(a)/sizeof(a[0]);i++){
for(int i=2;i<=a[i];i++){
if(a[i]%j==0){
break;
if(i=a[i]){
c. push _ back(a[i]);
break;
}
else{
continue;
}
//判断数组b中素数并将其放进c中
for(int i=0;i<sizeof(b)/sizeof(b[0]);i++){
for(int j=2;j<=b[i];j++){
if(b[i]%j==0){
break;
if(j=b[i]){
c. push _ back(b[i]);
break;
}
else{
continue;
}
int len=sizeof(c)/sizeof(c[0]);
//对数组c中数据升序排列
void  bubbleSort (int c[ ], int len);
//将升序排序数组打印
void print(int c[ ], int len);{
for(int i=0;i<len;i++){
cout<<c[i]<<endl;
}

  • 写回答

1条回答 默认 最新

  • 南城Flipped 2021-11-25 16:42
    关注
    
     #include<iostream>
     using namespace std;
     #include<math.h>
     int isPrime(int n){
         int i = 0;
         if(n<2) return 0; 
         for(i =2;i<=sqrt(n);i++){
             if(n%i==0) return 0;
        }
        if(i>sqrt(n)) return 1;
     }
     void sort(int d[],int index){
         int temp;
         for(int i = 0;i<index-1;i++){
             for(int j=i+1;j<index;j++){
                 if(d[i]>d[j]){
                     temp = d[i];
                     d[i] = d[j];
                     d[j] = temp;
                 }
            }
        }
     }
     int main(){
         int a[5]={19,24,40,37,11},b[5]={3,17,9,7,20},c[10]={0};
         int index = 0;
         for(int i=0;i<5;i++){
             if(isPrime(a[i])==1){
                 c[index] = a[i];
                index++;
            }
        }
        for(int i=0;i<5;i++){
             if(isPrime(b[i])==1){
                 c[index] = b[i];
                index++;
            }
        }
         for(int i=0;i<index;i++){
             printf("%d\t",c[i]);
        }
         printf("\n");
        sort(c,index);
         for(int i=0;i<index;i++){
             printf("%d\t",c[i]);
        }
     }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月3日
  • 已采纳回答 11月25日
  • 修改了问题 11月25日
  • 创建了问题 11月25日

悬赏问题

  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥15 BC260Y用MQTT向阿里云发布主题消息一直错误
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM
  • ¥15 划分vlan后不通了
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)