C-数组上机作业和参考答案

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

实 验 报 告 五

一【实验目的】

1.掌握一维数组、二维数组的概念及元素的各种表示方法 2.正确掌握数组输入输出等的基本操作。 3.掌握数组和指针的关系和有关操作 4.掌握数组掌握字符串的处理方法 5.掌握数组中的一些常用算法。

二【实验内容】

【实验5-1】从键盘输入6个同学计算机课程期末考试成绩,并统计出平均分、最高分、最低分,以及统计超过平均分的人数,并实现正确输出。

【实验5-2】随机产生10个学生的计算机课程的成绩(30~100),按照从大到小的顺序排序,分别显示排序前和排序后的结果。

提示:#include,包含实用工具函数后,可以使用随机函数产生成绩如:

for(i=0;i<10;i++) score[i]=rand ( )%71+30;

[真题17套] 请编写程序实现功能:把s 所指字符串中的内容逆置。例如:字符串中原有的字符串为:abcdefg ,则执行后, 串s 中的内容为:gfedcba 。

[真题10套] 请编写程序实现,将s 所指字符串中下标为偶数的字符删除,串中剩余字符形成的新串放在t 所指数组中。例如,当s 所指字符串中的内容为:"ABCDEFGHIJK",在t 所指数组中的内容应是:"BDFHJ"。

[真题13套]请编写程序实现功能:使数组左下三角元素中的值乘以n 。例如:若n 的值为3,a 数组中的值为⎪⎪⎪⎭⎫

⎛65

4832791则返回主程序后a 数组中的值为⎪⎪

⎪⎭

⎫ ⎝⎛181512896793 [真题58、76套]请编写程序实现功能:求出一个2×4整型二维数组中最大元素的值,并将此值

输出。(int arr[2][4]={5,8,3,45,76,-4,12,82} ;)

[真题65套] 请编写程序实现功能: 求出二维数组周边元素之和并输出。

6107

5

3

189********

97531则函数值为为例如:二维数组中的值⎪⎪⎪⎪

⎪⎭

⎛ [真题67套] 编写程序, 实现矩阵(3行3列)的转置(即行列互换)

例如, 输入下面的矩阵: ⎪⎪⎪

⎭⎫ ⎝⎛900800700600500400300200100 程序输出:

⎪⎪⎪⎭

⎝⎛900600300800500200700400100 [真题68套] 编写程序, 实现:求出小于或等于lim (lim=50)的所有素数并放在aa 数组中,函

数返回所求出的素数的个数。 [真题73套] 编写程序, 实现:将低于平均分的人数作为函数值返回,将低于平均分的分数放在below 所指的数组中。例如,当score 数组中的数据为:10、20、30、40、50、60、70、80、90时,函数返回的人数应该是4, below 中的数据应为: 10、20、30、40。

[真题98套] 编写程序, 实现:删去一维数组中所有相同的数, 使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。例如, 一维数组中的数据是: 2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10。删除后,数组中的内容应该是: 2 3 4 5 6 7 8 9 10。

【实验源代码及运行结果】

【实验5-1】 #include #define N 6 main() { int cpu[N],i,num=0,max,min; float aver=0.0; for(i=0;iaver)num++; if(cpu[i]>max)max=cpu[i]; if(cpu[i]

【实验5-2】 #include #include #define N 10

main()

{

int a[N],i,j,t;

for(i=0;i

{

a[i]=rand()%71+30;

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

}

printf("\n");

for(i=0;i

for(j=0;j

if(a[j]

for(i=0;i

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

printf("\n");

}

[真题17套]请编写程序实现功能:把s所指字符串中的内容逆置。例如:字符串中原有的字符串为:abcdefg,则执行后, 串s中的内容为:gfedcba。

#include

#include //测试字符串s的长度

#define n 40

main()

{

char t,s[n]="abcdefgh";

int i=0,j=strlen(s)-1;

puts(s);

for(i=0;i

{

t=s[i];

s[i]=s[j];

s[j]=t;

}

puts(s); //输出字符串S

}

[真题10套]请编写程序实现,将s所指字符串中下标为偶数的字符删除,串中剩余字符形成的新串放在t所指数组中。例如,当s所指字符串中的内容为:"ABCDEFGHIJK",在t 所指数组中的内容应是:"BDFHJ"。

#include

#include

相关文档
最新文档