计算机科学与技术第5次实验报告_第1页
计算机科学与技术第5次实验报告_第2页
计算机科学与技术第5次实验报告_第3页
计算机科学与技术第5次实验报告_第4页
计算机科学与技术第5次实验报告_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

哈尔滨工程大学哈尔滨工程大学 程序设计基础程序设计基础 实验报告实验报告 基础实践一基础实践一 姓 名 班 级 学 号 实验时间 2018 年 5 月 10 日 成绩 哈尔滨工程大学计算机基础课程教学中心哈尔滨工程大学计算机基础课程教学中心 实验题目 1 输入两个整数数组 每个数组有五个整数 将两者和 并并排列输出 设计思想 定义三个数组 将两组数据存储到第三个数组中 再用冒泡排序对其由 大到小排序并输出 实验代码及注释 include include define N 10 宏定义 int main int a 5 b 5 c N 第一组数据 第二组 合并数组 int i j t 循环变量 中间变量 printf 输入第一组数据 n 输入数据 for i 0 i 5 i scanf d printf 输入第二组数据 n for i 0 i 5 i scanf d for i 0 i 5 i c i a i 两组数据合并 c i 5 b i for i 0 i N 1 i 冒泡排序从大到小 for j 0 j N i 1 j if c j c j 1 t c j c j c j 1 c j 1 t printf 合并并由大到小排列后数据为 n for i 0 i 10 i printf d t c i 排序 冒泡 选择 return 0 验证与结论 总结与心得体会 数组合并比较简单但要防止数组越界 数组存储 数据是从第 0 位开始 故要多加注意 冒泡选择是最基础的排序算 法必须掌握 实验题目 2 某公司生成 5 种产品 每周记录生产的每种产品数量 和销售数量 每个月月末 公司将对其生产规划进行评估 该评估 需要以下一个或多个信息 每周生成和销售的数量 所有生产产品的总量 所有销售产品的总量 每种产品生产和销售的总量 假设生产和销售的产品和销售分别用二维数组 M 和 S 表示 如下所 示 其中 M i j 表示第 i 周生产第 j 种产品的数量 S i j 表示第 i 周销售第 j 种产品的数量 假设使用一维数组 C 来表示每种产品的 价格 其中 C j 表示第 j 种产品的价格 数组 M S 和 C 的值都在 程序中输入 设计思想 声明四个数组函数 每周生成和销售的数量 所有生产 产品的总量 所有销售产品的总量 每种产品生产和销售的总量 然后直接调用使其对主函数中数组值直接改变 最后用循环输出 实验代码及注释 include include void money double mva 5 6 double m 5 6 double c 6 函数声明 void sum1 double sweek 5 double m 5 6 void sum2 double mpr 6 double m 5 6 double sum3 double m 5 int main int i j 行 列 double M 5 6 S 5 6 C 6 第几周生产第几种产品的数量 第几 周销售第几种产品的数量 每种产品的价格 double Mvalue 5 6 Svalue 5 6 Mweek 5 Sweek 5 Mproduct 6 Sproduct 6 double Mtotal Stotal for i 1 i 4 i for j 1 j 5 j printf 请输入第 d 周生产第 d 种产品的数量 i j scanf lf printf 请输入第 d 周销售第 d 种产品的数量 i j scanf lf printf n for j 1 j 5 j printf 请输入第 d 种产品的价格 j scanf lf printf n money Mvalue M C 调用函数 money Svalue S C sum1 Mweek Mvalue sum1 Sweek Svalue sum2 Mproduct Mvalue sum2 Sproduct Svalue Mtotal sum3 Mweek Stotal sum3 Sweek for i 1 i 4 i for j 1 j 5 j printf 第 d 周生产第 d 种产品的价值 2lf n i j Mvalue i j printf 第 d 周销售第 d 种产品的价值 2lf n i j Svalue i j printf 在本月里生成第 d 种产品的价值 2lf n j Mproduct j printf 在本月里销售第 d 种产品的价值 2lf n j Sproduct j printf 在第 d 周生产的产品价值 2lf n i Mweek i printf 在第 d 周所有产品的价值 2lf n i Sweek i printf 在本月里生产所有产品总价值 2lf n Mtotal printf 在本月里销售所有产品总价值 2lf n Stotal return 0 void money double mva 5 6 double m 5 6 double c 6 第 i 周生产 和销售第 j 种产品的价值 int i j for i 1 i 4 i for j 1 j 5 j mva i j m i j c j printf 第 d 周生产第 d 种产品的价值 lf n i j m i j c j void sum1 double sweek 5 double m 5 6 第 i 周生产和销售的产品 的价值 int i j for i 1 i 4 i sweek i 0 数组初始化 for j 1 j 5 j sweek i sweek i m i j void sum2 double mpr 6 double m 5 6 在本月生产和销售第 j 种产 品的价值 int i j for j 1 j 5 j mpr j 0 数组初始化 for i 1 i 4 i mpr j mpr j m i j double sum3 double m 5 在本月里生产和销售所有产品总价值 int i double sum3 0 for i 1 i 4 i sum3 sum3 m i return sum3 验证与结论 总结与心得体会 数组参数形参实质的本质是指针 使用数组函数 使得代码看起来更加整洁 可读性更高 当出现大量复制代码时考 虑能否用函数统一起来 否则在后期维护上将变得困难许多 实验题目 3 编程将一个字符串插入到另一个字符串的第 n 个位置 设计思想 使用 strlen 函数计算数组长度 然后使用循环用倒序赋值使 a 数组 在第 n 个位置及以后字符向后挪数组 b 长度 再用倒序赋值法将 b 赋给 a 的空位 实验代码及注释 include include int main int n count1 count2 i j 位置 字符串长度 循环变量 printf 输入 n 值 n scanf d char a 20 默认长度为 20 char b 20 printf 输入 a n scanf s a printf 输入 b n scanf s b count1 strlen a 计算字符串 a 与 b 的长度 count2 strlen b for i count1 1 i n 1 i 倒序赋值 使 a 在第 n 个位置及以后 字符向后挪 count2 位 a i count2 a i i n 1 count2 对 i 重新赋值为 n 1 count2 for j count2 1 j 0 j 倒序赋值将 b 赋给 a 空位 a i b j i printf 新字符串为 for j 0 j count1 count2 j printf c a j return 0 验证与结论 总结与心得体会 输入字符串后末尾会有一个 0 在赋值时必须极为小心 有可能会使程 序提前终止得不到预期的效果 另外利用 strlen 函数计算数组长度 时不包括末尾的 0 实验题目 4 编写一个程序 使输入的一个字符串按反序存放 在 主函数中输入输出字符 设计思想 输入字符串存储在 a 数组中 利用 strlen 函数计算数组 a 长度 再用循 环倒序存储在 b 数组中并输出 实验代码及注释 include include define n 100 宏定义 n 值为 100 int main char a n b n 定义字符串数组 int i j 0 在数组中存储位置 printf 请输入字符 n gets a 输入字符串 i strlen a 1 数组长度减一 for i 0 i 倒序输出存储 b j a i 倒序存储 printf c a i j return 0 验证与结论 总结与心得体会 利用 scanf 函数输入字符串时无法输入空格 故用了 gets 函数来输入 字符串 实验题目 5 编写程序 从键盘输入一行字符 统计其中英文字母 空格 数字和其他字符的个数 设计思想 输入字符串并存储在 a 数组中 然后将其转换为整型数 组存储在数组 b 中 再利用 ASCII 码的范围对其进行统计输出 实验代码及注释 include include define n 200 宏定义 n 值为 200 int main char a n 定义字符串数组 int i j 循环变量 int count1 0 count2 0 count3 0 count4 0 英文字母 空格 数 字和其他字符的个数 int b n 整型数组 printf 请输入字符 n gets a 输入字符 j strlen a 将数组 a 的长度赋给 j for i 0 i j i b i a i 将字符转换成 ASCII 码存储在 b 数组

温馨提示

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

评论

0/150

提交评论