c语言函数iseven,C语言实验指导书

实验6 循环控制结构(2学时)

1.目的要求

1)掌握for/while/do-while语句、break语句和continue语句,实现循环控制结构

2)掌握嵌套循环 2.实验内容

1)输入正整数n,计算1+2+3+?+n并输出

2)判断正整数n(n>2)是否是素数(素数:除了1和它自身,没有其他因子)

3)打印斐波那契数列的前20项。(斐波那契数列特点:第一项和第二项为1,其余各项为前两项之和。1,1,2,3,5,8,11?)

4)计算a+aa+aaa+?aa?a(n个a)的值,n和a的值由键盘输入

5)水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:13 + 53+ 33 = 153)。计算并输出所有三位水仙花数。 6)假设有原材料100米,若生产A零件需要7米材料,生产B零件需11米材料,那么AB零件各生产多少,使得最后剩余的材料最少?

7)输入正整数m和n,用穷举法计算m和n的最大公约数和最小公倍数。 8)(选作)在公共汽车站有三条汽车线,一路车每隔5分钟开出一辆,六路车每隔10分钟开出一辆,八路车每隔8分钟开出一辆。这三路汽车在同一时刻发车后,至少再过多少分钟,又在同一时刻发车?

9)(选作)游戏者投两枚骰子,每个骰子有六面,包含1,2,3,4,5,6个点。投两枚骰子之后,计算点数之和,如果第一次的点数之和为7或11,则游戏者胜。如果第一次的点数之和为2,3或12,则游戏者输,庄家赢。如果第一次的点数之和为4,5,6,8,9或10,则游戏者继续投骰子,直到赢到点数,如果7次之后还没有赢到点数,则游戏者输。

实验7 函数编写与调用(2学时)

1.目的要求

1)掌握函数的定义和使用 2)掌握参数的传递方式 2.实验内容

1)设有数学函数f(x)=x2+2x+3,在C语言程序中编写代码实现函数f。在main函数中根据用户输入的x,调用该函数计算f(x),将结果打印输出。

2)编写函数iseven,判断整数n是否是偶数。在main函数中调用该函数并打印结论。

3)编写函数max,计算两个整数中的较大值。并在main函数中调用该函数,计算输入数的较大者输出(该要求适用于下面各题)。

4)编写函数,计算两个整数的最大公约数 5) 编写函数,计算两个整数的最小公倍数

6)编写函数,判断整数m是否是素数,并在main函数中输入数据,调用函数判断,结果输出。

7) 编写递归函数,计算正整数n的位数(即n是几位数),并在main函数中输入数据,调用函数判断,结果输出。

8) 编写递归函数void print(int n),打印正整数n的各位数字 ,并在main函数中输入数据,调用函数判断,结果输出。

9)编写函数double pow(double x,int n),计算xn,并在main函数中输入数据,调用函数判断,结果输出。

实验8 数组应用(2学时)

1.目的要求

1)掌握数组的定义和使用 2)掌握数组的应用 2.实验内容

1)从键盘输入8个整数,并存放在数组int a[8]中,统计8个整数中偶数的个数。

2)已知某班10名学生的考试成绩存储在数组中 int score[10]={85,97,71,89,88,75,82,80,77,73 };

从键盘输入一个考分,查找该分数是否在数组中,如果是的话,打印它是第几名学生的成绩。如果该分数不存在,输出提示信息。

3)定义数组int sc[6];,请编写代码从键盘录入6名学生的成绩用该数组存储,并统计最高分、平均分以及高于平均分的学生人数。

4)已知有序数组int a[7]={3,5,8,11,20,23},要求从键盘任意输入一个正整数,并把该数插入到数组的适当位置并挪动其他元素,使得数组仍然是升序排列的。 5)合并两个有序数组int a[4]={2,4,6,8}和int b[5]={1,3,5,7,9}并存储到数组int c[9]中,使数组c的内容按升序存放。

6)编写函数void Reverse(int a[],int n)将数组逆序,并在main函数中使用下列代码验证该函数的功能。

main() {

int i,score[10]={85,97,71,89,88,75,82,80,77,73 }; Reverse(score,10);

for(i=0;i<10;i++) printf(“s[%d]=%d , ”,i,score[i]); }

7)找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点。 应当至少准备两组测试数据: ①二维数组有鞍点

9 80 205 40 90 -60 96 1 210 -3 101 89 ②二维数组没有鞍点

9 80 205 40 90 -60 196 1 210 -3 101 89

45 54 156 7

8)(选作)从键盘输入一个十进制数并将其转化为16进制数显示。例如输入123,输出7B。

9)(选作)思考如何用数组表示一个大整数如123456789123(该数已经超过int和long类型表示范围)?计算大整数(12位)乘2、除2 的结果,并打印。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值