收藏 分销(赏)

C实验报告6参考答案.doc

上传人:天**** 文档编号:4376013 上传时间:2024-09-14 格式:DOC 页数:5 大小:34KB
下载 相关 举报
C实验报告6参考答案.doc_第1页
第1页 / 共5页
C实验报告6参考答案.doc_第2页
第2页 / 共5页
C实验报告6参考答案.doc_第3页
第3页 / 共5页
C实验报告6参考答案.doc_第4页
第4页 / 共5页
C实验报告6参考答案.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、高级语言程序设计实验报告 班级: 学号: 姓名: 成绩: 实验6 数组程序设计一、实验目得1 掌握一维数组与二维数组得定义、赋值与输入输出得方法。2 掌握字符数组与字符串函数得使用。3 掌握与数组有关得算法。二、实验内容 1.改错题(在程序中画出错误得语句,将修改后得语句完整地写在该语句得右边。)(1)下列程序得功能为:为指定得数组输入10个数据,并求这些数据之与。纠正程序中存在得错误,以实现其功能。程序以文件名sy6_1、c保存。该程序得输出结果:#includevoid mainint n=10,i,sum=0; int an; int a10; for(i=0;i10;i+) scanf

2、(%d,ai); scanf(%d,&ai); sum=sum+ai; printf(sum=%dn,sum);该程序得输出结果:(2)下列程序得功能为:将字符串b连接到字符串a。纠正程序中存在得错误,以实现其功能。程序以文件名sy6_2、c保存。#includevoid main( ) char a=wel,b=e; char a20=wel,b=e; int i,n=0; while(!an) n+; while(an != 0) n+; for(i=0;bi!=0;i+) an+i=bi; an+i=0; printf(%sn,a);(3)下列程序得功能为:找出一个二维数组中得鞍点,即该

3、位置上得元素在该行上最大,在该列上最小。也可能没有鞍点。纠正程序中存在得错误,以实现其功能。程序以文件名sy6_3、c保存。#include#define N 4#define M 4main该程序得输出结果: int i,j,k,flag1,flag2,aNM,max,maxj; for (i=0;iN;i+) for (j=0;jM;j+) scanf(%d,&aij); flag2=0; for (i=0;iN;i+) max=aj0; max=ai0; for (j=0;jmax) if (aij=max) max=aij; maxj=j; for (k=0,flag1=1;kakma

4、xj)flag1=0; if (flag1) printf(nThe saddle point is:a%d%d=%dn,i,maxj,max); flag2=1; if ( flag2) if (! flag2) printf(nThere is no saddle point in the Matrixn);2.程序填空题(1)以下程序得功能就是:采用二分法在给定得有序数组中查找用户输入得值,并显示查找结果。补充完善程序,以实现其功能。程序以文件名sy6_4、c保存。 #include stdio、h#define N 10main int a =0,1,2,3,4,5,6,7,8,9,k

5、;int low=0,high=N1,mid,find=0;printf(请输入欲查找得值:n);scanf(%d,&k);while (lowk) _ high=mid1 ;else_ low=mid+1_;if(!finD、 printf(%d未找到n,k);(2)以下程序得功能就是:求3个字符串(每串不超过20个字符)中得最大者。补充完善程序,以实现其功能。程序以文件名sy6_5、c保存。 #include#include void mainchar string20,str320; int i; for (i=0;i0 ) strcpy(string,str0); else strcp

6、y(string,str1); if ( strcmp(string,str2)0 ) strcpy(string,str2); puts(string); (3)下列程序得功能为:从键盘输入20个整数,统计非负数个数,并计算非负数之与。补充完善程序,以实现其功能。程序以文件名sy6_6、c保存。#include main int i,a20,sum=0,count; count=0; for(i=0;i20;i+ ) scanf(%d, &ai ); for(i=0;i20;i+) if(ai0) continue; sum+=ai; count+;printf(s=%dt count=%d

7、n,sum,count);3.编程题(写出程序运行结果)(1)从键盘输入10个数,用选择排序法将其按由大到小得顺序排序;然后在排好序得数列中插入一个数,使数列保持从大到小得顺序。程序以文件名sy6_7、c存盘。#define N 11#includevoid main int aN,i,j,k,t,p; printf(请输入%d 个整数:n,N); for(i=0;iN1;i+) scanf(%d,&ai); for(i=0;iN2;i+) /选择排序 k=i; for(j=i+1;jaj) k=j; if(k!=i) t=ak; ak=ai; ai=t; printf(n排序后:n); fo

8、r(i=0;i=0 & ajp) /找插入位置 aj+1=aj;j; aj+1=p; /插入 printf(n插入后:n); for(i=0;iN;i+) printf(%5d,ai); printf(n);(2)从键盘输入两个矩阵A、B得值,求C=A+B 。程序以文件名sy6_8、c存盘。#include void main int a23,b23,c23,i,j; for(i=0;i2;i+) for(j=0;j3; j+) scanf(%d,&aij); for(i=0;i2;i+) for(j =0;j3; j+) scanf(%d,&bij); for(i=0; i2; i+) fo

9、r(j =0;j3; j+) cij=aij+bij; for( i=0;i2;i+) for(j=0;j3;j+) printf(%3d,cij); printf(n); (3)从键盘输入一个字符串,删除其中某个字符。如输入字符串“abcdefededff”,删除其中得字符e,则输出得字符串为“abcdfddff”。程序以文件名sy6_9、c存盘。/方法一:#include#includevoid mainint i,j;char s80,c;printf(输入一行字符: );gets(s); printf(输入要删除字符: );scanf(%c,&c);for(i=0,j=0;si!=0;i+) if (si!=c) sj+=si;sj=0;puts(s);/方法二:#include#includevoid mainchar line80 ; char ch; int i,j; int len; printf(输入一行字符: ); gets(line) ; printf(输入要删除字符: ); ch=getchar; i=0; while(linei!=0 ) while( linei!=0 & linei!=ch) i+; len=strlen(line); for(j=i;jlen1;j+) linej=linej+1; linej=0; puts(line);

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服