实验七 数组程序设计

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

实验七数组程序设计(4学时)

一、实验方式:一人一机

二、实验目的:

1、掌握数组的定义、赋值和输入输出的方法。

2、学习用数组实现相关的算法(特别是排序算法)。

3、掌握C语言中字符数组和字符串处理函数的使用。

三、实验内容:

说明:前四题为必做题目,后两题为选做题目。

1、下列程序的功能是:输入10个整数,按每行3个数输出这些整数,最后

输出10个整数的平均值。程序中有几处错误,试找出它们后加以修改,并上机验证修改结果。

#include

void main( )

{ int i,n,a[10],avg;

for(i=0;i

scanf(“%d”,a[i]);

for(i=0;i

{ if(i%3==0) printf(“\n”);

printf(“%d ”,a[i]);

}

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

avg+=a[i];

printf(“\navg=%f\n”,avg);

}

实验步骤与过程:#include

void main( )

{ int i,a[10];

float avg=0;

printf("欢迎请输入10个整数:\n");

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

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

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

{ if(i%3==0) printf("\n");

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

}

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

avg+=a[i];avg=avg/10;

printf("\navg=%f\n",avg);

}

实验调试记录:--------------------Configuration: 71ext - Win32 Debug--------------------

Compiling...

71ext.c

Linking...

71ext.exe - 0 error(s), 0 warning(s)

参考答案:

2、写一个函数,对输入的10个整数按从小到大的顺序排序(升序,用冒泡

排序实现)。(实验指导书P147)

实验步骤与过程:

/*ex7_1.cpp*/

#include

void sort1(int s[],int n)

{

int i,j;

int t;

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

for(j=0;j<10;j++)

if(s[j]

{

t=s[j-1];

s[j-1]=s[j];

s[j]=t;

}

}

void main()

{

int i,a[10];

printf("请输入10个整数:\n");

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

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

sort1(a,10);

printf("排序后的输出为:\n");

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

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

}

实验调试记录:--------------------Configuration: 72ext - Win32 Debug--------------------

Compiling...

72ext.c

Linking...

72ext.exe - 0 error(s), 0 warning(s)

参考答案:

3、编写程序,判断某一字符串是不是“回文数”,回文数是从左至右或从右

至左读起来都是一样的字符串。(实验指导书P153)

实验步骤与过程:

#include

#include

int huiwen(char str[])

{

int i,j,len,flag=1;

len=strlen(str);

for(i=0,j=len-1;i<=j;i++,j--);

if(str[i]!=str[j])

{

if(str[i]>128&&str[j]>128)

{

if(str[i]==str[i-1]&&str[i+1]==str[j])

{

i++;j--;

}

else flag=0;

}

else flag=0;

}

return flag;

}

void main()

{

char str[50];

printf("请输入一字符串 ");

gets(str);

if(huiwen(str))

printf("该字符串是回文\n");

else

printf("该字符串不是回文\n");

}

实验调试记录:

--------------------Configuration: 2 - Win32 Debug-------------------- Compiling...

2.cpp

Linking...

2.exe - 0 error(s), 0 warning(s)

参考答案:

4、输入一个3行3列矩阵的所有元素,然后求出主对角线元素之和。

实验步骤与过程:#include

相关文档
最新文档