实验四

part1

字符型

运行结果如下

double型

截图如下

part2

当对所有数组元素初始化的时候,才可以省略不写数组大小。

part5

补全

1

#include<stdio.h>
int findMax(int a[],int n);
const int N=5;
int main(){
    int a[N];
    int max,i;
    printf("输入%d个整数:\n",N);
    for(i=0;i<N;i++){
        scanf("%d",&a[i]);}
    max=findMax(a,N);
    printf("数组中最大元素值为:%d",max);
    return 0;
} 
int findMax(int a[],int n){
    int i,j,t,max;
    for(i=0;i<n-1;i++){
       for(j=0;j<n-i-1;j++){
           if(a[j]>a[j+1]){
        t=a[j+1];
           a[j+1]=a[j];
           a[j]=t; 
           }
       }
    }max=a[n-1];
    return max;
}
截图如下

2

#include<stdio.h>
const int N=4;
void output(char x[],int n);
char ranking(char x[],int n);
int main(){
    char string[N]={'2','0','1','9'};
    int i;
    printf("排序前:\n");
    output(string,N);
    ranking(string,N);
    printf("\n");
    printf("排序后:\n");
    output(string,N);
    printf("\n");
    return 0;
    }
    void output(char x[],int n){
        int i;
        for(i=0;i<N;i++)
        printf("%c",x[i]);}
    char ranking(char x[],int n){
        int i,j,t;
        for(i=0;i<n-1;i++){
            for(j=0;j<n-i-1;j++){
                if(x[j+1]>x[j]){
                    t=x[j+1];
                    x[j+1]=x[j];
                    x[j]=t;
                    }
            }
    }
}

截图如下

总结

对于实验5补全的第一题,因为max对于findmax自定义的函数为内部变量,和主函数中的max不是同一个变量,所以不能直接把findmax中的max带入到主函数的printf输入最大值的max。我之前一直没注意这点所以我的最大值是错误的。

 

评论链接

http://www.cnblogs.com/sj0904/

http://www.cnblogs.com/431-w-34-m-q

https://www.cnblogs.com/03-summer-30/

 

posted @ 2019-04-25 22:39  couldi  阅读(92)  评论(0编辑  收藏  举报