【实验结论】

•Part 5   编程练习

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

♢练习一:补全程序,查找一组整型数据的最大值。

程序源码:

 1 #include <stdio.h>
 2 int findMax(int a[], int n); 
 3 const int N=5;
 4 int main() {
 5     int a[N];
 6     int max, i;
 7     printf("输入%d个整数: \n", N);
 8     for(i=0;i<N;i++)
 9     scanf("%d",&a[i]);
10     max=findMax(a,N);
11     printf("数组a中最大元素值为: %d\n\n", max); 
12     return 0;
13 } 
14 int findMax(int a[], int n)
15 {
16     int num,m,i;
17     num=sizeof(a)/sizeof(int);
18     m=a[0];
19     for(i=0;i<n;i++)
20     {
21       if(a[i]>m)
22       m=a[i];
23     }
24     return m;
25 }

运行结果截图:

实验四(部分) 随笔 第1张

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

程序源码:

 1 #include <stdio.h>
 2 const int N=4;
 3 void output(char x[], int n);    
 4 void rank(char x[]) ;
 5 
 6 int main() {
 7     char string[N] = {'2','0','1','9'};
 8     int i;    
 9     printf("排序前: \n");
10     output(string, N);
11     rank(string);
12     printf("\n排序后: \n"); 
13     output(string, N);    
14     printf("\n");    
15     return 0;    
16 } 
17 
18 void output(char x[], int n) {
19     int i;    
20     for(i=0; i<N; i++)
21         printf("%c", x[i]);
22 } 
23 void rank(char x[])
24 {
25     int num,i,j;
26     char t;
27     num=sizeof(x)/sizeof(char);
28     for(j=0;j<num-1;j++)
29        for(i=0;i<num-j-1;i++)
30           if(x[i]<x[i+1])
31           {
32               t=x[i];
33               x[i]=x[i+1];
34               x[i+1]=t;
35           }
36 }

运行结果截图:

实验四(部分) 随笔 第2张

♢选做:尝试编写一个输入函数,完成字符串输入。然后,修改main()程序,在其中调用输入函数,使 得,程序可以在运行时对用户输入的任意字符进行由大到小排序。

程序源码:

 1 #include <stdio.h>
 2 const int N=5;
 3 void output(char x[], int n);    
 4 void rank(char x[]) ;
 5 void input(char x[], int n);
 6 int main() {
 7     char string[N];
 8     input(string,N);
 9     printf("\n排序前: \n");
10     output(string, N);
11     rank(string);
12     printf("\n排序后: \n"); 
13     output(string, N);    
14     printf("\n");    
15     return 0;    
16 } 
17 void input(char x[], int n){
18     int i;
19     printf("请输入五个字符:\n"); 
20     for(i=0;i<N;i++)
21     scanf("%c,",&x[i]);
22 }
23 void output(char x[], int n) {
24     int i;    
25     for(i=0; i<N; i++)
26         printf("%c ", x[i]);
27 } 
28 void rank(char x[])
29 {
30     int num,i,j;
31     char t;
32     num=sizeof(x)/sizeof(char);
33     for(j=0;j<num-1;j++)
34        for(i=0;i<num-j-1;i++)
35           if(x[i]<x[i+1])
36           {
37               t=x[i];
38               x[i]=x[i+1];
39               x[i+1]=t;
40           }
41 }

运行结果截图:

实验四(部分) 随笔 第3张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄