指针练习输入十个数

将最小的数与第一个数对换,把最大的数与最后一个数对换。
写3个函数:1.输入10个数。2.进行处理。3.输出10个数。

#include<stdio.h>
#include<math.h>
void Input(int *arr);
void Change(int *arr);
void Output(int *arr);
int main(void){
   
    Input(arr);
    Change(arr);
    Output(arr);

}

void Input(int *arr){
    for(int i=0;i<10;i++){
        printf("input %d number:",i);
        scanf("%d",arr+i);
    }

    printf("your input:\n");
     for(int i=0;i<10;i++){
        printf("%d  ",*(arr+i));
    }

    printf("\n");
}

void Change(int *arr){
    int *max=arr+9,*min=arr;
    int i;
    for(i=0;i<10;i++){
        if(*max<*(arr+i))max=arr+i;
        if(*min>*(arr+i))min=arr+i;


    }

        int temp;
    if(min!=arr){temp=*min;*min=*arr;*arr=temp;}
    if(max==arr)max=min;
    if(max!=arr+9){temp=*max;*max=*(arr+9);*(arr+9)=temp;};



}

void Output(int *arr){
    printf("after change:\n");
 for(int i=0;i<10;i++){
        printf("%d  ",*(arr+i));
    }

    printf("\n");
}
posted @   zhongta  阅读(14)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示