实验四

“撰写内容 提交的技术博客文档中,写「实验结论」和 「实验总结与体会」两部分即可。 图文排版及源码粘贴要求同「实验1.pdf」文档内要求,不再重复”

Part1: 数组数据结构 

Part2: 一维数组的定义、初始化以及数组元素的引用方法

Part3: 数组作为函数参数

Part4: 用冒泡法对一组数据由小到大排序

Part5: 编程练习

/*输入一组整型,输出最大值*/ 
#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);
    
    //利用循环输入N个整数给数组a
     for(i=0; i<N; i++)        
        
        scanf("%d",&a[i]); 
    
    // 调用子函数max求数组a的最大元素值,并赋值给max     
    max=findMax(a,N);
    printf("数组a中最大元素值为: %d\n\n", max);
    
    return 0;
} 
// 功能描述:找出整型数组a中元素的最大值,并返回次此最大值
int findMax(int a[], int n){
    int max=a[0],j;
    for(j=1;j<n;j++)    
    {
        if(a[j]>max)
        max=a[j];
    }
    return max;
    
}

练习2:补全程序,使用冒泡法对字符数组由大到小排序

#include <stdio.h> 
const int N=4; 
void output(char x[], int n); // 函数声明 
// 排序函数声明 
void px(char x[],int n);
int main() {
    char string[N] = {'2','0','1','9'};
        int i;
        printf("排序前: \n");
        output(string, N);
// 调用排序函数对字符数组中的字符由大到小排序  
    px(string,N);// 补足代码2    
    printf("\n排序后: \n");     
    output(string, N);        
    printf("\n");
            
    return 0;   
    } 
// 函数定义 
// 函数功能描述:输出包含有n个元素的字符数组元素 
// 形参:字符数组,以及字符数组元素个数 
void output(char x[], int n) {
    int i;        
    for(i=0; i<N; i++)        
    printf("%c", x[i]); } 
// 函数定义 
// 函数功能描述:对一组字符由大到小排序 
// 形参:字符数组,以及字符数组元素个数 
void px(char x[],int n)
{
    int i,j;
    char temp;
    for(i=0;i<n;i++)
    {for(j=0;j<n-i-1;j++)
    {


        if(x[j]<x[j+1])
        {
            temp=x[j];
            x[j]=x[j+1];
            x[j+1]=temp;
        }
    }
    }
}

 

posted @ 2019-04-25 17:18  yy-Siri  阅读(201)  评论(2编辑  收藏  举报