- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言实验lab10
C程序设计实验报告
学院: 国际商学院 班级: 14电商 专业: 电子商务 姓名: 熊靓男 日期: 15.5.25 学号: 1420070049 实验目的
复习一维数组
掌握二维数组参数的传递
掌握排序算法
实验内容
消灭怪物
在阳光明媚月色皎洁的一个晚上,独自开车行驶在路上突然,天空中出现一个庞大的怪物正要向J袭来,反应迅速的J立马从车厢里拿武器准备消灭怪物,他车厢里有n把离子枪, 每一把枪都有各自的伤害,而怪物也有防御力,要想用枪消灭怪物就必须要枪的伤害大于怪物的防御力,现在J想知道,他车厢里有多少把枪能消灭怪物,也就是说 有多少把枪的伤害大于怪物的防御力。
实验记录
算法描述
#include stdio.h
int main()
{
int Size,Power,i;
int count(int*,int,int);
printf(请输入枪的数量:);
scanf(%d,Size);
printf(请输入怪物的防御力:);
scanf(%d,Power);
printf(请输入每把枪的伤害:\n);
int Hurt[Size];
for(i=0;iSize;i++)
{
scanf(%d,Hurt[i]); //利用循环给数组赋值
}
printf(有%d把枪的伤害大于怪物的防御力!\n,count(Hurt,Size,Power));//函数调用时,数组只要写名称,不声明元素个数。
return 0;
}
int count(int hurt[],int size,int power)
{
int t=0,i;
for(i=0;isize;i++)
{
if(hurt[i]power) t++;//计数器t,遇到伤害值大于防御则t++ }
return t;
}
测试数据(至少3组不同测试数据)
5;12;2 5 9 13 15;
B.7;3;1 4 7 9 14 0 3;
C.3;9;10 89 1;
运行结果(程序执行结果截图 )
1. 输出:
2. 输出:
3. 输出:
改写程序
改写课本316页程序8.9:将二维数组val的大小改为4行5列,并输出所有元素
实验记录
算法描述
#include stdio.h
#define ROWS 4
#define COLS 5
void display(int nums[ROWS][COLS])
{
int rowNum,colNum;
for(rowNum=0;rowNumROWS;rowNum++)//两层循环控制,输出二维数组。
{
for(colNum=0;colNumCOLS;colNum++)
{
printf(%4d,nums[rowNum][colNum]);
}
printf(\n);
}
}
int main()
{
int val[ROWS][COLS]={8,16,9,52,3,15,27,6,14,25,2,10};//二维数组赋初值
display(val);//调用函数只写数列名称
return 0;
}
运行结果(程序执行结果截图 )
1. 输出:
成绩查询
某科的期中考试成绩已经出来了,作为老师的好助手,你要完成一项任务:编写一个程序,通过这个程序,老师只需输入学号即可查到该名同学的成绩。为了完成这项任务,你需要定义一个5行2列的二维数组(为简单起见,假设学生人数为5),并初始化,每行第一个数为学号,第二个数为成绩。
提示:编写一个getScore函数,该函数接收一个二维数组参数和一个学号,返回对应 的成绩。
函数原型为:int getScore( int score[ROWS][COLS], int id );
实验记录
算法描述
#include stdio.h
#define ROWS 5//宏定义行列个数
#define COLS 2
int getScore( int score[ROWS][COLS], int id )
{
int i,j,t;
for(i=0;iROWS;i++)
{
if(score[i][0]==id) t=score[i][1]; //找到与学号匹配的成绩并带回
}
return t;
}
int main()
{
int Score[ROWS][COLS],i,j,Id;
printf(请输入五位学生的学号和成绩:\n);
for(i=0;iROWS;i++)//两层循环控制给二维数组赋值
{
for(j=0;jCOLS;j++)
{
scanf(%d,Score[i][j
文档评论(0)