第二次上机实验

1.题目描述

定义一个排序函数void sort(int *x,int n) ,利用指针作为参数,完成数组的排序操作。main()利用随机函数产生n个0~100之间的数,调用sort()函数进行排序,后输出。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<ctime>
using namespace std;
void sort(int *x,int n){
    for(int i=0;i<=n;i++){
        for(int j=1;j<n;j++){
            if(*(x+j-1)>*(x+j)){
                int p=*(x+j-1);
                *(x+j-1)=*(x+j);
                *(x+j)=p;
            }
        }
    }
}
int main(){
    int a[105],n;
    srand(unsigned(time(0)));
    cin>>n;
    for(int i=0;i<n;i++){
        *(a+i)=rand()%101;
        cout<<*(a+i)<<" ";
    }
    cout<<endl; 
    sort(a,n);
    for(int i=0;i<n;i++){
        cout<<*(a+i)<<" ";
    }
    getchar();
    getchar();
    return 0;
}

 

2.题目描述

定义一个字符数组,从键盘输入一个字符串,利用该字符串生成一个回文后输出。如输入字符串abcd,生成的回文是:abcddcba。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
using namespace std;
int main(){
    char c[50];
    cin.getline(c,50);
    int p=strlen(c);
    for(int i=0;i<p;i++){
        *(c+p+i)=*(c+p-i-1);
    }
    for(int i=0;i<2*p;i++)
        cout<<*(c+i);
    getchar();
    getchar();
    return 0;
}

 

3.题目描述

定义一个排序函数void sort(int *x,int n) ,利用指针作为参数,完成数组的排序操作。main()利用随机函数产生n个0~100之间的数,调用sort()函数进行排序,后输出。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<ctime>
using namespace std;
void sort(int *x,int n){
    for(int i=0;i<=n;i++){
        for(int j=1;j<n;j++){
            if(*(x+j-1)>*(x+j)){
                int p=*(x+j-1);
                *(x+j-1)=*(x+j);
                *(x+j)=p;
            }
        }
    }
}
int main(){
    int a[105],n;
    srand(unsigned(time(0)));
    cin>>n;
    for(int i=0;i<n;i++){
        *(a+i)=rand()%101;
        cout<<*(a+i)<<" ";
    }
    cout<<endl; 
    sort(a,n);
    for(int i=0;i<n;i++){
        cout<<*(a+i)<<" ";
    }
    getchar();
    getchar();
    return 0;
}

 

posted @ 2022-03-12 20:34  LittleOrange  阅读(53)  评论(0编辑  收藏  举报