- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计II试验指导书
课程实验指导书
第二部分 实验内容
实验一:数组定义、初始化和引用运算
一、实验目的
1、掌握一维数组的定义和引用
2、掌握一维数组的初始化方法
3、了解与一维数组有关的应用编程方法
二、实验意义
在解决实际问题或实现某些算法时,数组是经常使用的构造数据类型,掌握数组的定义,元素引用特征和数组的编程特色,可加强学生解决实际问题的能力,同时可接触到更多的经典算法,这些算法很多都是通过数组类型存储数据并实现的,有了这些基础后,学生可以在今后的编程中应用这些知识。数组的实验能让学生进一步的提高程序设计编程和调试的能力,对于数组元素引用及循环控制的特点,也可以在实验中得以加深理解和巩固知识。
三、实验重点
1 一维数组的定义、元素的引用。
2 一维数组编程的循环控制特色。
3 排序等相关算法的实现。
四、实验难点
一维数组编程的循环控制特色,程序调试时的数组越界问题
排序算法的理解和记忆
五、实验方式
提前编写程序,写好实验报告,上机实验时一边调试程序一边将实验报告上关于程序调试和运行结果的信息填写到实验报告上,实验完成时上交实验报告。
六、实验内容
1. 运行下面的程序。根据运行结果,可以说明什么?
main( )
{
int i,x[5]={1,2,3,4,5};
for (i=0;i=5;i++)
printf(%4d,x[i]);
}
2、编程:输入一个长度为10的一维数组,然后将其向右循环移动一位后输出。
如:输入的一维数组啊[10]为:0 1 2 3 4 5 6 7 8 9 10
则向右循环移动一位后,数组a[10]变为:10 0 1 2 3 4 5 6 7 8 9
3、从键盘输入10个整数,找出最大的数并输出该数及其下标。
4、用scanf函数给二维数组a[3][4]输入12个数据,并求出每一行的正数之和,每一行的最小值以及下标值。
5、编一程序,将两个字符串连接起来,不要用strcat函数。 找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点。至少准备两组测试数据:
(1)二维数组有鞍点
9 80 205 40
90 -60 96 1
210 -3 101 89
(2)二维数组没有鞍点
9 80 205 40
90 -60 96 1
210 -3 101 89
45 54 156 7
用scanf函数从键盘输入数组的各元素的值,检查结果是否正确,题目未
指定二维数组的行数和列数,程序应能处理任意行数和列数的数组。
程序提示:
输入矩阵
flag2=0;//矩阵中无鞍点
for(i=0;in;i++)//找第i行的鞍点
{
max=a[i][0];maxj=0;
用for循环语句找第i行的最大值存放在max中,其下标j保存到maxj中
for(k=0,flag1=1;knflag1;k++)//判断max是否在该列上最小flag1=0则不是最小
if(maxa[k][maxj]) flag1=0;//max不是该列的最小元素
if(flag1)
{
printf(\n第%d行第%d列的%d是鞍点\n,i+1,maxj+1,max);
flag2=1;
}
}//endfori
if(!flag2) printf(\n矩阵中无鞍点\n);
4、 输入一行字符,统计其中的单词个数,已知单词之间用空格分隔开。
5、从键盘输入一个字符串,分别输出其完全大写和完全小写的形式。
6、输入6个字符串,输出最大的字符串。
七、实验总结和实验报告的撰写
实验三:函数的申明、定义和简单函数的应用
一、实验目的
1、掌握模块化编程方法中自定义函数和主调函数的模块关系。
2、函数的申明格式和申明的位置
3函数的定义格式
4函数的调用
二、实验意义
采用模块化程序设计的方法,是解决复杂问题的基础。将一个复杂的较大的问题,分解为一个个独立的简单模块。模块在C语言中是用函数来实现的,因此掌握mul实现1到n累乘;
在主函数main里调用sum和mul函数求1到30累加和1到15累乘,最后
把累加和累乘结果输出。
4、编写一个函数prime实现:判断任何一个数是否为素数;并在main函数里调用prime函数判断一个数是否为素数。
5、编写函数,判断指定的字符是否是数字字符,如果是返回1,不是则返回0。在主函数中输入该字符,调用函数判断该字符并输出是否是数字字符。
6、编写一个函数,计算一个整数m的n次幂,在主函数中输入m和n,并在主函数中输出计算结果。
7、编写一个函数,输出如
文档评论(0)