C语言数组实验报告_第1页
C语言数组实验报告_第2页
C语言数组实验报告_第3页
C语言数组实验报告_第4页
C语言数组实验报告_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验名:数组实验目的1、掌握数组定义的规那么。2、掌握C语言数组的根本用法。、实验容)题目11、编写程序,测试以下数组的定义方式是否正确(1) main()intn;scanf(“%d,&n);intan;(2) main()constintn=10;intan;(3) #include<stdio.h>#defineM10main()intaM;(4) main()inta2+2*4;(5) #include<stdio.h>#defineM2#defineN8main()intaM+N;通过这一实验,可以说明什么问题?2、输入和输出信息描述及数据类型确定;、

2、输入数据序号输入数据描述1n,an2nan3aM或a104a2+2*45aM+N数据类型intconstintintintintint3、程序调试错误序错误信息列出出错语句以及出号错提示1-1main.c|5|error:expectedexpressionbefore'%'token|scanf(“%d,&n);1-2main.c|6|warning:unusedvariable'a'-Wunused-variable|intan;(5)main.c|6|warning:unusedvariable'a'-Wunused-variabl

3、e|intaM+N;是否解决方法解决是将d两边的符号改为西文字符的引号scanf("%d",&n);是将前面的n的输入去掉,把n改为具体数字是加上个scanf(%“d,&aM+N);4、相关问题答复通过这一实验,可以说明什么问题?1、2345对,1错,1中an的数组定义的。里的常量表达式不能是变量。2、一维数组定义的时候【】里的常量表达式包括常量和符号常量,但不能是变量。)题目21、运行下面的C©序根据运行结果,可以说明什么?main()intnum5=1,2,3,4,5;intii;for(i=0;i<5;i+)printf("%

4、dUmi);2、的入和的出信息描述及数据类型确定;、的入数据序号的入数据描述数据类型1num5,iint2的出数据序号的出数据描述数据类型1numiint3、程序源代码填写程序调试正确后的代码#include<stdio.h>intmain()intnum5=1,2,3,4,5;/*定义num5*/inti;for(i=0;i<5;i+)出num至num4*/return0;/*下标应该是0到4*/printf("%d",numi);/*依次输4、程序调试错误序号1错误信息列出出错语句以及出错提示格式不对是否解决解决方法main.c|5|error:unk

5、nowntypename'inti'|intii;main.c|7|error:expectedexpressionbefore'%'token|printf("%dUmi);for(i=0;i<5;i+)5、相关问题答复改为inti;将引号改为西文字符去掉等号运行结果:12345根据运行结果,可以说明什么?说明:数组元素的下标从0开场,比定义的时候会小一个。返回一个)题目31、操作符&用以求一个变量的地址,这在函数scan仲已经使用过了。现在要你设计一个程序,3*5的二维数组各元素的地址,并由此说明二维数组中各元素是按什么顺序存诸的。2

6、、输入和输出信息描述及数据类型确定;、输入数据序号1输入数据描述a35,i.jadress数据类型int整型指针变量2序号输出数据输出数据描述adress数据类型int3、程序源代码填写程序调试正确后的代码#include<stdio.h>intmain()inta35;int*adress;inti,j;for(i=0;i<3;i+)printf("n");for(j=0;j<5;j+)/定义并初始化/每行循环/每列循环adress/将adresSK值为整型指针变量adress=&aij;printf("%d",adre

7、ss);return0;源文可执行文件测试测试用例选取原测试输入测试输出结果是否结果分析件名名序号因数据正确1无无是无误4、测试与结果分析、测试数据与结果268&66S2606672268667626S6680P68S6S42GB6692268669626867062G867122686716)题目4为一个起泡排序程序设计测试用例,并测试之。1、程序源代码填写程序调试正确后的代码#include<stdio.h>intmain()inta10;inti,j,k;printf("请输入10个数字:n");for(i=0;i<=9;i+)scanf(&

8、quot;%d",&ai);printf("n");for(j=0;j<9;j+)for(i=0;i<9-j;i+)if(ai>ai+1)k=ai;ai=ai+1;ai+1=k;printf("排序后的数字为:n");for(i=0;i<=9;i+)printf("%d",ai);printf("n");return0;2、输入和输出信息描述及数据类型确定;、输入数据序号输入数据描述1a10,i,j,k2输出数据序号输出数据描述1ai/定义一维数组a10/依次输入数组的数字

9、/换行/进展9次循环,实现9趟比较/在每一趟中进展9-j次比较/相邻两数比较/假设后一个比前一个大,那么交换位置/依次输出排序后的数字数据类型int数据类型int源文可执行文件测试测试用例选取原测试输入测试输出结果是否件名名序号因数据正确1测试用例1 12 13 141 12 13 14 15 67是4、测试与结果分析 、测试数据与结果结果分析无误3、程序调试错误错误信息列出出错语句以及出错是否解决方法序号提示解决1输出结果间无空格是在最后一个printf("%d"的d后面加空格155667787880898980)题目51、1983年在ACM图林奖颁奖大会上,出色的计算机

10、科学家,UNIX的鼻祖,C语言的创始人之一,图林大奖得主,KenThompson上台的第一句话是:“我是一个程序员,在我的104昧上,我自豪地写上了我的职业。作为一个程序员,我的工作就是写程序,今天我将向大家提供一个我曾经写过的最精练的程序。"这个程序如下:chars=飞,0,'n','''.')'n,'n','/''n',/*(213linesdeleted)*/0;/* Thestringisa* representationofthebody* ofthisprogramfr

11、om'0'* totheend*/main()inti;printf("char"for(i=0;si;i+)printf(t%d,n"闾i);printf(“%s,s);请上机运行这个程序,指出它的功能和运行结果。2、程序源代码填写程序调试正确后的代码#include<stdio.h>chars='t','0','n','',;,'n','n','/','*''n',/*(213linesde

12、leted)*/0;/* Thestringisa* representationofthebody* ofthisprogramfrom'0'* totheend*/intmain()inti;printf("charts=n");for(i=0;si;i+)printf("t%d,n",si);printf("%s",s);return0;3、程序调试错误错误信息列出出错语句以及出错是否解决方法序号提示解决1 所有的引号和逗号格式不对是都改为西文字符2 main.c|22|error:expected'=&

13、#39;,',','',是在main前加int'asm'or'_attribute_'before''token|3 main.c|23|warning:missing是改为terminating"characterenabledbyprintf("charts=n");default|printf("charts="4 格式不完整是加上include,return0;4、相关问题答复源文可执行文件测试测试用例选取原测试输入测试输出结果件名名序号因数据1测试用例请上

14、机运行这个程序,指出它的功能和运行结果。答:功能输出字符串的数值。5、测试与结果分析、测试数据与结果是否结果分析正确是无误)题目61、题目容描述在下面的5X5魔方矩阵中,每一行、每一列、魔方矩阵中的元素读到一个二维整型数组中,屏幕上。每一对角线上的元素之和都是相等的,试编写程序将这些然后,检验其是否为魔方矩阵,并将其按如下格式显示到172341011241576138142015162212192131825292、程序源代码填写程序调试正确后的代码#include<stdio.h>main()inti,j,sum1,sum2;intfind1=0,find2=0,m=0;inta

15、55;for(i=0;i<5;i+)for(j=0;j<5;j+)scanf("%d",&aij);for(i=0;i<5;i+)for(j=0;j<5;j+)printf("%d",aij);/定义变量/输入5*5个数字/输出矩阵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

16、("%dt",aij); printf("n");/ 计算对角线元素和/ 计算对角线元素和/ 打印魔方矩阵if(sum1!=sum2)printf(" 此矩阵不为魔方矩阵n");/ 判断对角线和是否相等m=1;for(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

17、("此矩阵为魔方矩阵n");3、测试与结果分析、测试数据与结果源文可执行文件测试测试用例选取原测试输入测试输出结果是否结果分析件名名序号因数据正确1题目是无误17241S15235714164613202210121?21311182529此矩阵为魔方矩阵七)题目71、题目容描述餐饮效劳质量调查打分在商业和科学研究中,人们经常需要对数据进展分析并将结果以直方图的形式显示出来。例如,一个公司的主管可能需要了解一年来公司的营业状况,比较一下各月份的销售收入状况,如果仅给出一大堆数据,这显然太不直观了,如果能将这些数据以条形图直方图的形式表示,那么将会大大增加这些数据的直观性,也

18、便于数据的分析与比照。下面以顾客对餐饮效劳打分为例,练习一下这方面的程序。假设现在有40个学生被邀请来给自助餐厅的食品和效劳质量打分,分数为从110的10个等级(1意味着最低分,1昧示最高分),试统计调查结果,并用'*'打印出如下形式的统计结果直方图GradeCountHistogram*10*2、输入和输出信息描述及数据类型确定;、输入数据序号输入数据描述1score40,i,j,gradecount112输出数据序号输出数据描述1grade,countgrade3、程序源代码填写程序调试正确后的代码#include<stdio.h>intmain()intsco

19、re40,i,j,grade;intcount11=0;for(i=0;i<40;i+)printf("pleaseinputscore%d:",i+1);scanf("%d",&scorei);switch(scorei)case1:count1+;break;case2:count2+;break;case3:count3+;break;case4:count4+;break;数据类型int数据类型char/定义并初始化数组count11/输入每个分数/统计每个分数的个数/评分为1时,数组中count1加一/评分为2时,数组中count

20、2加二case5:count5+;break;case6:count6+;break;case7:count7+;break;case8:count8+;break;case9:count9+;break;case10:count10+;break;default:printf("Inputerror!n");printf("GradetCounttHistogram'n");for(grade=1;grade<=10;grade+)/其余情况/输出表头/统计每个分数的个数printf("%dt%dt",grade,co

21、untgrade);/输出分数和每个分数的个数for(j=0;j<countgrade;j+)printf("%c",'*');printf("n");return0;根据评分的个数输出*数测试测试用例选取测试输入数据测试输出是否正确结果分析序号原因结果1测试用例8个2,好3,5个4,1孙6,3如以下列是无误个7,23,76图2测试用例2个1,4个2,3个3,1个4,5如以下列是无误个5,6个6,5个7,2个8,6个图4、测试与结果分析、测试数据与结果pleasninputscove=6pleaseinputscope371:9pl

22、easeinputscoreL381z?pleaseinputscore(381:7pleaseinputftcore393=7pleaseInputscope391:7pleaseinputtscape401:7Input140J:7Gi'adeCountHQr-adeCountHistAC|risa.n10122824QqqJ45J41*5055JCJSKMM>-i£7LJi3Li7D5MJ<KMKS682306100ia39,3个10,78,0,22八)题目81、题目容描述由计算机随机生成一个各位相异的4位数字,由人来猜,每次提示:xAxBA前面的数字表示有几个数字猜对位置也对了B前面的数字表示有几个数字猜对但位置不对提示:用数组昭计算机随机生成的4位数,用数组b存人猜的4位数,对a和b的一样位置的元素进展比较,得到A前面的数字,对a和b的不同位置的元素进展比较,得到B前面的数字。2、输入和输出信息描述及数据类型确定;、输入数据序号1输入数据描述a4,b4,m,n,i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论