版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验名: 数组一、 实验目的1、掌握数组定义的规则。2、掌握C语言数组的基本用法。二、实验内容) 题目 11、编写程序,测试下列数组的定义方式是否正确(1) main()int n;scanf( “%d” ,&n);int an;(2) main()const int n=10;int an;(3) #include #define M 10main()int aM;(4) main()int a2+2*4;(5) #include #define M 2#define N 8main() int aM+N;通过这一实验, 可以说明什么问题 ?2、输入和输出信息描述及数据类型确定;、输入数据序
2、号输入数据描述数据类型(1)n,anint(2)ncons tintanint(3)aM或a10int(4)a2+2*4int(5)aM+Nint3、程序调试错误序错误信息(列出出错语句以及出是否解决方法号错提示)解决( 1-1 )main.c|5|error: expected是将晒边的符号改为西文字符的引号expression before % token| scanf( “%d” ,&n);scanf(%d,&n);( 1-2 )main.c|6|warning: unused variable a-Wunused-variable|int an;是将前面的n的输入去掉,把n改为具体数字
3、(5)main.c|6|warning: unused是加上个 scanf( “ %d” ,&aM+N);variable a -Wunused-variable| int aM+N;4、相关问题回答通过这一实验, 可以说明什么问题 ?1、(2)(3)( 4)(5)对,(1)错,(1)中 an 的数组定义的【】里的常量表达式不能是变量。2、一维数组定义的时候【】里的常量表达式包括常量和符号常量,但不能是变量。) 题目 21、运行下面的Cg序,根据运行结果,可以说明什么?main( ) int num5=1,2,3,4,5;inti i;for(i=0;i5;i+)printf(“%d” ,nu
4、mi);2、输入和输出信息描述及数据类型确定; 、输入数据序号 输入数据描述数据类型1num5,iint( 2 ) 输出数据序号输出数据描述数据类型1numiint 3、程序源代码(填写程序调试正确后的代码)#include int main( )精品int num5=1,2,3,4,5;/*int i;for(i=0;i5;i+)/*/* 依次输出num0 至 num4*/return 0;定义 num5*/下标应该是0到 4*/printf(%d,numi);4、程序调试错误 错误信息 (列出出错语句以及出错序号提示)1 格式不对2 main.c|5|error:unknown typen
5、ame inti| inti i;3 main.c|7|error: expectedexpression before % token| printf( “%d” ,numi);4 for(i=0;i5;i+)是否解决解决方法是是改为 inti;是将引号改为西文字符是去掉等号5、相关问题回答运行结果: 12345根据运行结果, 可以说明什么 ?说明:数组元素的下标从0开始,比定义的时候会小一个。) 题目 31、操作符&用以求一个变量的地址,这在函数scanf 中已经使用过了。现在要你设计一个程序,返回一个3 * 5 的二维数组各元素的地址 , 并由此说明二维数组中各元素是按什么顺序存诸的。2
6、、输入和输出信息描述及数据类型确定;、输入数据序号 输入数据描述数据类型1a35,i.jint2adress整型指针变量( 2 ) 输出数据序号输出数据描述1adress数据类型int3、程序源代码(填写程序调试正确后的代码)#include int main()int a35;int *adress;/int i,j;for(i=0;i3;i+)/printf(n);for(j=0;j5;j+)/ adress=&aij; /定义并初始化 adress每行循环每列循环将adress赋值为整型指针变量printf(%d ,adress);return 0;4、测试与结果分析 、测试数据与结果源
7、文可执行文件测试测试用例选取原测试输入测试输出结果是否结果分析件名名序号因数据正确1无无是无误26R66E4 26耻668 2686672 2686676 26B66S02686704 2686708 2686712 2686716 268672。)题目4为一个起泡排序程序设计测试用例,并测试之。1、程序源代码(填写程序调试正确后的代码)#include int main()int a10;/int i,j,k;printf( 请输入10个数字:n);for(i=0;i=9;i+) scanf(%d,&ai);printf(n);for(j=0;j9;j+)for(i=0;iai+1) k=a
8、i;ai=ai+1;ai+1=k;printf(排序后的数字为:n);for(i=0;i=9;i+)printf(%d ,ai);/printf(n);return 0;定义一维数组a10/依次输入数组的数字换行进行9次循环,实现9趟比较 在每一趟中进行9-j次比较 相邻两数比较若后一个比前一个大,则交换位置依次输出排序后的数字2、输入和输出信息描述及数据类型确定;、输入数据序号输入数据描述数据类型1a10,i,j,kint(2)输出数据序号输出数据描述数据类型int源文可执行文件测试测试用例选取原件名名序号因1测试用例4、测试与结果分析 、测试数据与结果测试输入 数据测试输出结果是否正确结果
9、分析1 12 13 141 12 13 14 15 67是无误15 56 6778 80 8978 89 80ai3、程序调试错误错误信息(列出出错语句以及出错是否解决方法序号提示)解决1输出结果间无空格是在最后一个printf( %d的d后面加空格1 12 13 14 15 56 67 ?8 89 8悻序后的数字为工1 12 13 14 15 56 6? 78 80 8?)题目51、1983年,在ACRE林奖颁奖大会上,杰出的计算机科学家,UNIX的鼻祖,C语言的创始人之一,图林大奖得主,Ken Thompson上台的第一句话是:“我是一个程序员,在我的1040表上, 我自豪地写上了我的职业
10、。作为一个程序员,我的工作就是写程序,今天我将向大家提供一 个我曾经写过的最精练的程序。”这个程序如下:char s =飞,0,n ,.;)n ,n ,/,*,n ,/* (213 lines deleted)*/0;/* The string is a* representation of the body* of this program from0* to the end*/main() int i;printf(char ;for (i=0;si;i+)printf( “ n” ,si);printf ( “%s” ,s);请上机运行这个程序, 指出它的功能和运行结果。2、 程序源代码
11、(填写程序调试正确后的代码)#includechar s =t,0,n,; ;,n,n, /,*n,/* (213 lines deleted)*/0;/* The string is a* representation of the body* of this program from 0* to the end*/int main( ) int i;printf(char ts=n );for (i=0;si;i+)printf(t%d,n,si);printf(%s,s);return 0;3、 程序调试解决方法都改为西文字符在main前力口 int改为printf(char ts=n
12、);错误 错误信息 (列出出错语句以及出错 是否序号提示)解决1 所有的引号和逗号格式不对是2 main.c|22|error: expected=,是, ;, asm or_attribute_ before token|3 main.c|23|warning: missing是terminating characterenabled by default| printf(char ts= ;格式不完整力口上 include,return 0;源文可执行文件测试测试用例选取原测试输入测试输出结果是否结果分析件名名序号因数据正确1测试用例是无误4、相关问题回答请上机运行这个程序,指出它的功能和
13、运行结果。答:功能输出字符串的数值。5、测试与结果分析、测试数据与结果har-s C 1 =48,10, 125,5九 19,10,47,42,地0)题目61、题目内容描述在下面的5X5魔方矩阵中,每一行、每一列、 魔方矩阵中的元素读到一个二维整型数组中,每一对角线上的元素之和都是相等的,试编写程序将这些然后, 检验其是否为魔方矩阵,并将其按如下格式显示到屏幕上。17 24 1 823 5 7 144 6 13 2015162210 12 19 21 311 18 25 2 92、程序源代码(填写程序调试正确后的代码)#includemain()int i,j,sum1,sum2;int fi
14、nd1=0,find2=0,m=0;/定义变量int a55;for(i=0;i5;i+)for(j=0;j5;j+)scanf(%d,&aij);/输入 5*5 个数字for(i=0;i5;i+)for(j=0;j5;j+)/输出矩阵printf(n);for(sum1=0,i=0;i=4;i+)sum1+=aii;for(sum2=0,i=0,j=4;i=4;i+,j-) sum2+=+aij;for(i=0;i=4;i+)for(j=0;j=4;j+) printf(%dt,aij);printf(n);if(sum1!=sum2)printf( 此矩阵不为魔方矩阵n);m=1;for(
15、i=0;i=4;i+)for(j=0;j=4;j+)ai5+=aij;a5j+=aij;/ 计算对角线元素和/ 计算对角线元素和/ 打印魔方矩阵/ 判断对角线和是否相等/ 判断各行列和是否相等if(m=0)for(i=0;i=4;i+)if(ai5!=a5i | ai5!=sum1)printf( 此矩阵不为魔方矩阵n);break;if(i=5)printf( 此矩阵为魔方矩阵n);源文可执行文件测试测试用例选取原测试输入测试输出结果是否件名名序号因数据正确1题目是3、测试与结果分析 、测试数据与结果结果分析无误printf(%d,aij)*7241815235716q61320221012
16、192131118:2E29此矩阵为魔方矩阵(七)题目71、题目内容描述餐饮服务质量调查打分在商业和科学研究中,人们经常需要对数据进行分析并将结果以直方图的形式显示出来。例如,一个公司的主管可能需要了解一年来公司的营业状况,比较一下各月份的销售收入状况,如果仅给出一大堆数据,这显然太不直观了,如果能将这些数据以条形图(直方图)的形式表示,那么将会大大增加这些数据的直观性,也便于数据的分析与对比。下面以顾客对餐饮服务打分为例,练习一下这方面的程序。假设现在有40个学生被邀请来给自助餐厅的食品和服务质量打分,分数为从 11。的10个等级(1意味着最低分,10表示最高分),试统计调查结果,并用*打印
17、出如下形式的统计结果直方图。Grade Count Histogram*2 10*2、输入和输出信息描述及数据类型确定;、输入数据序号输入数据描述1score40,i,j,grade , count11(2)输出数据序号输出数据描述1grade,countgrade3、程序源代码(填写程序调试正确后的代码)#include int main()int score40,i,j,grade;int count11=0;/for(i=0;i40;i+)printf(please input score%d:,i+1); scanf(%d,&scorei);/switch(scorei) case 1
18、:count1+; break;/case 2:count2+; break;/case 3:count3+; break;数据类型int数据类型char定义并初始化数组count【11】输入每个分数/统计每个分数的个数评分为1时,数组中count1加一评分为2时,数组中count2加二case 4:count4+; break;case 5:count5+; break;case 6:count6+; break;case 7:count7+; break;case 8:count8+; break;case 9:count9+; break;case 10:count10+; break;
19、default:printf(Input error!n); / printf(GradetCounttHistogramn); / for(grade=1;grade=10;grade+) printf(%dt%dt,grade,countgrade); / for(j=0;jcountgrade;j+) printf(%c,*);/printf(n); return 0; 4、测试与结果分析 、测试数据与结果其余情况输出表头/统计每个分数的个数输出分数和每个分数的个数根据评分的个数输出*数测试测试用例选取测试输入数据测试输出是否正确结果分析序号原因结果1测试用例8个2,9个3,5个4,13
20、个如下图是无误6,3 个 7,23 , 762测试用例2个1, 4个2,3个3, 1个如下图是无误4,5个5,6个6,5个7,2个8,6 个9, 3个 10,78,0,22inputscore L37:9pleei:ein putccore38 J:7pieagbinputscope t39 : 7inputscore C4B1-7GradeCountHis togr-an122433JC JM M:4155B6M75JC M Ji( Jf-Jt-H236103M MM(八)题目81、题目内容描述由计算机随机生成一个各位相异的4位数字,由人来猜,每次提示:xAxBA前面的数字表示有几个数字猜对位置也对了B前面的数字表示有几个数字猜对但位置不对提示:用数组a存计算机随机生成的4位数,用数组b存人猜的4位数,对a和b的相同位置的元素进行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年销售会议现场技术支持与设备维护合同
- 二零二五版苗圃基地苗木繁育与推广合作合同3篇
- 2024版企业集体合同范本
- 2025年度会展中心大楼楼顶会展设施租赁合同4篇
- 二零二五年饭店员工劳动合同续签范本3篇
- 2025年度养老公寓租赁管理合同4篇
- 2025年度家居床上用品批发代理合同范本4篇
- 2025年度环保技术合作居间合同范本4篇
- 2025年度个人住宅抵押贷款合同范本4篇
- 2025年度农机作业租赁与农业技术集成服务合同模板
- 品牌策划与推广-项目5-品牌推广课件
- 信息学奥赛-计算机基础知识(完整版)资料
- 发烟硫酸(CAS:8014-95-7)理化性质及危险特性表
- 数字信号处理(课件)
- 公路自然灾害防治对策课件
- 信息简报通用模板
- 社会组织管理概论全套ppt课件(完整版)
- 火灾报警应急处置程序流程图
- 耳鸣中医临床路径
- 安徽身份证号码前6位
- 分子生物学在动物遗传育种方面的应用
评论
0/150
提交评论