实验7数组1

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言程序设计与应用

实验报告

实验项目名称: ___数组 ____ ______

专业:______网络1602_______________ 班级:_______1602______________

学号:_______2______________

报告人:_______蔡序兵______________ 指导老师:__________易禹___________ 实验时间:_____________________

实验目的:

1、掌握一维数组的定义、赋值与输入输出的方法;

2.掌握字符数组的使用;

3.掌握与数组有关的算法(例如排序算法)。

实验题1:

1、实验内容与要求:

已有一个已排好序的数组(int a[10]={3,5,7,9,11,13}),今输入一个数,要求按原来排序的规律将它插入数组中。

输入:1

输出:1,3,5,7,9,11,13

输入:8

输出:3,5,7,8,9,11,13

2、程序设计过程分析(自然语言或伪代码或流程图或N-S图):

3、程序源代码(含注释):

/*已有一个已排好序的数组(int a[10]={3,5,7,9,11,13})

今输入一个数,要求按原来排序的规律将它插入数组中。*/

#include

main()

{

int a[11]={3,5,7,9,11,13},i,k,n;

printf("插入的数字为:");

scanf("%d",&n);

if(n

for(i=7;i>0;i--)

a[i]=a[i-1];

a[0]=n;

}

else{

for(i=0;i<6;i++){

if(n>=a[i]){

k=i+1;

}

}

for(i=6;i>k;i--){

a[i]=a[i-1];

}

a[k]=n;}

for(i=0;i<7;i++)

printf("%d ",a[i]);

printf("\n");

}

4、实验结论(截图)及心得:

实验题2:

1、实验内容与要求:

设计一个程序,从键盘输入指定个数的数据,按选择排序方法,将其按

从小到大的顺序排列。(选择排序,首先找出值最小的数,然后把这个数与第一个数交换,这样值最小的数就放到了第一个位置;然后,在从剩下的数中找值最小的,把它与第二个数互换,使得第二小的数放在第二个位置上。以此类推,直到所有的值从小到大的顺序排列为止。)

输入/输出实例:

输入:32 45 7 21 12

输出:7 12 21 32 45

2、程序设计过程分析(自然语言或伪代码或流程图或N-S图):

3、程序源代码(含注释):

#include

void sort1(int a[],int n){

int i;

int j;

int temp;

for(i = 0; i < n-1; i++)

{

for(j = i+1; j < n; j++)

{

if(a[i]>a[j])

{

temp = a[j];

a[j] = a[i];

a[i]=temp;

}

}

}

}

main()

{

int a[5],i,n=5;

for(i=0;i<5;i++)

scanf("%d",&a[i]);

sort1(a,n);

for(i=0;i<5;i++)

printf("%d ",a[i]);

}

4、实验结论(截图)及心得:

实验题3:

1、实验内容与要求:

青年歌手参加歌曲大奖赛,有10个评委对她的进行打分,试编程求这位选手的平均得分(去掉一个最高分与一个最低分)。

输入/输出实例:

输入:8、5 9 9、8 6、5 8、7 8、5 9、3 9、6 8、9 8、2

输出:8、8

2、程序设计过程分析(自然语言或伪代码或流程图或N-S图):

3、程序源代码(含注释):

#include

void main()

{

//声明并初始化长度为10的数组

float a[10];

int i;

float x,sum=0,max,min;

for (i=0;i<10;i++){

scanf("%f",&a[i]);

sum+=a[i];}

max=a[0];

min=a[0];

for (i=0;i<10;i++){

max=(max<=a[i])?a[i]:max;

min=(min>=a[i])?a[i]:min;} x=(sum-max-min)/8;

printf("%、1f",x);

}

4、实验结论(截图)及心得:

实验题4:

1、实验内容与要求:

输入一串字符,计算其中字符、数字与空格的个数。

输入:sd234kj64jk mjk

输出:字符:9 数字:5 空格:1

2、程序设计过程分析(自然语言或伪代码或流程图或N-S图):

3、程序源代码(含注释):

#include

#define N 81

void main()

{

char x[N]="sd234kj64jk mjk";

int i=0;

int a=0,b=0,c=0;

for(i=0;x[i]!='\0';i++)

printf("%c",x[i]);

i=0;

while(1)

{

if(x[i]==' ')

c++;

if(x[i]>='0'&&x[i]<='9')

b++;

if((x[i]>='A'&&x[i]<='Z')||(x[i]>='a'&&x[i]<='z'))

a++;

if(x[i]=='\0')

break;

i++;

}

相关文档
最新文档