一、本次课主要内容:

本章主要介绍指针相关的基础知识,本节课的主要如下

(1)通过示例"密码开锁"引入指针的概念和主要知识点,分析了密码开锁的过程来说明变量、内存单元和地址之间的关系,从而引入指针的基本概念,接着介绍了指针的基本运算以及指针变量的初始化。

(2)通过例子"角色互换"引入指针作为函数参数的用途和用法,区分按值调用和引用调用,分析了3个swap()函数进行对比,最后通过给定的年和天数计算是某年某月某日的实例学习了如何使用指针作为函数参数返回多个值,解决了以前一个函数最多只能return一个值的问题。

(3)通过示例"冒泡排序"引入数组名作为函数参数,重点介绍指针、数组和地址之间的关系,通过例子说明了指针和数组可以实现相同的操作。引出上节课学习的选择排序进行了对比。

二、实验内容:(70分)

1. 重做课本上P191例8-5,要求使用选择排序算法和冒泡排序算法分别实现。(注意:分别对应两个函数,由主函数分别调用)

2. 编写一个利用指针找最大值的函数,并用主函数调用。

3. 实现一个拆分实数的整数与小数部分的简单函数,并用主函数调用。

4. 在数组中查找指定元素:输入一个正整数n(1<n<=10),然后输入n个整数存入数组a中,再输入一个整数x,在数组a中查找x,若找到则输出相应的下标,否则显示"Not found"。要求定义和调用函数search(int list[],int n,int x),在数组list中查找元素x,若找到则返回相应下标,否则返回-1,参数n代表数组list中元素的数量。试编写相应程序。

三、实验要求:

1. 作业的Deadline:  2016-12-8 20:00pm

2. 将本次实验内容的代码上传到https://coding.net/ 网站。 (60分)

3. 写一篇随笔,内容分为四个部分:(总分40分)

写出本次课学习到的知识和体会、学习的时长、学习过程中遇到的问题、问题解决的方法及问题的疑惑等。

随笔的格式如下:

题目:实验11——指针的基础应用

本次课学习到的知识点:(5分)

(1)…….

(2)……..

………..

2. 实验过程中遇到的问题及解决方法:(10分)

(1)

(2)

…….

3. 实验心得体会及本章学习总结(10分)

………

4. 几个问题的思考与回答(15分)

(1)两个相同类型的指针变量能不能相加?为什么

(2)在使用scanf()函数时,输入参数列表需要使用取地址操作符&,但当参数为字符数组名时并没有使用,为什么?如果在字符数组名前加上取地址操作符&,会发生什么?

(3)C语言不允许用赋值表达式直接对数组赋值,为什么?

四、附加题:

1. 要求编写函数,判断给定的一串字符是否为"回文"。所谓"回文"是指顺读和倒读都一样的字符串。如"XYZYX"和"xyzzyx"都是回文。

2.二分查找。设已有一个10个元素的整型数组a,且按值从小到大有序排列。输入一个整数x,然后在数组中查找x,如果找到,输出相应的下标,否则,输出"Not found"。

五、本次作业评价方式:

总分100分:其中,coding中程序提交60分(根据代码的步骤、格式、注释、结构正确性来酌情分配),博客书写40分;,延迟一天扣10分,直至扣完100分。

C语言程序设计第11次作业的更多相关文章

  1. C语言程序设计第六次作业——循环结构(2)

    C语言程序设计第六次作业--循环结构(2) 之前的博客园图片没处理好,对大家说一声抱歉.希望大家能够多多指出我的错误,我来认真修改 ^ - ^ !. (1)改错题 序列求和:输入一个正实数eps,计算 ...

  2. C语言程序设计第4堂作业

    大家注意:本次作业稍有增加,由于放假期间大家空闲时间比较充足,将之前学习过程中遗留的问题必须在假期解决.   本次课学习主要内容: 分支结构中的二分支结构.多分支结构和else-if语句 掌握字符型数 ...

  3. 2018上C语言程序设计(高级)作业- 初步计划

    C语言程序设计(高级)36学时,每周4学时,共9周.主要学习指针.结构和文件三部分内容.整个课程作业计划如下: PTA和博客的使用指南 若第一次使用PTA和博客,请务必先把PTA的使用简介和教师如何在 ...

  4. C语言程序设计第十一次作业

    同学们,一晃一个学期就过去了,第一节课时,我曾做过一个调查,没有一个同学在中学阶段接触过程序设计,也就是说,那时,大家都是零基础,或许只是听说过"C语言"这个词,但其他便一无所知了 ...

  5. C语言程序设计第三次作业--选择结构(1)

    Deadline: 2017-10-29 22:00 一.学习要点 掌握关系运算符和关系表达式 掌握如何判断两个实数相等 掌握常用数学函数的使用 掌握逻辑运算符和逻辑表达式 理解逻辑运算的短路特性 掌 ...

  6. 2018上C语言程序设计(初级)作业- 第2次作业

    一.预习作业 在课前或者课后观看浙江大学程序设计入门-C语言课程中第2周.第3周的判断部分和第4周的判断部分. 二.PTA作业 完成第7周.第8周和第9周和第10周共8次pta作业,将PTA作业中部分 ...

  7. 2018上C语言程序设计(高级)作业- 第4次作业成绩及总结

    作业地址 https://edu.cnblogs.com/campus/hljkj/CS2017-01/homework/1842 评分准则 第4次作业各项成绩包括三项: 完成WC项目:60分:基本功 ...

  8. C语言程序设计第13次作业

    一.本次课主要内容: 本章主要介绍结构的基本概念与定义.结构变量的定义和使用.结构数组应用.结构指针概念.重点介绍结构的定义与成员引用方式.同时也介绍了文件的基本概念,文件操作处理基本步骤和过程,常用 ...

  9. C语言程序设计第9堂作业

    一.本次课主要内容: 本章将散布在前五章中的数据类型和表达式等内容做了归纳性的汇总,本次课需要掌握以下两个方面: (1)本次课通过从数据在计算机内的存储格式入手,介绍整型.字符型.单精度和双精度实型四 ...

随机推荐

  1. 在cwcity空间上安装phpmyadmin

    上传程序后,安装phpMyAdmin-4.1.4-all-languages.3715384168.zip 出现了错误: Warning: realpath() [function.realpath] ...

  2. echarts图表第一个案例

    1.action中获取到数据 @Override public String execute() throws Exception { List<Student> find = echar ...

  3. ASP.NET MVC增删改查

    ASP.NET MVC中的增删改查 基本都要使用C控制器中的两个action来完成操作,一个用于从主界面跳转到新页面.同时将所需操作的数据传到新界面,另一个则对应新界面的按钮,用于完成操作.将数据传回 ...

  4. vue-todolist

    look:先看效果: 在浏览器的地址输入localhost:8080时,页面展示的是coding和walking两个无序序列,接着在输入框输入任何字符再敲enter回车键时,列表中又增加了一列,但是只 ...

  5. java selenium (十一) 操作弹出对话框

    Web 开发人员通常需要利用JavaScript弹出对话框来给用户一些信息提示, 包括以下几种类型 阅读目录 对话框类型 1.  警告框: 用于提示用户相关信息的验证结果, 错误或警告等 2. 提示框 ...

  6. ASP.NET MVC4 请不要将你的Control命名为APIController

    今天小猪就遇到了这个坑,虽然小猪知道MVC4已经默认提供了APIController类,这样如果某Control继承自这个APIController的话会使用其自带的REST服务等等,但是之前小猪想我 ...

  7. Oracle中Merge into用法总结

    MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句.通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,连接条件匹配上的进行UPDATE,无法匹配的执 ...

  8. Android6.0中的权限

    Android6.0相比之前的Android版本有一个很大的不同点,就是动态的获取权限.之前我们需要什么权限只需要在Manifest文件中声明即可,在6.0中,又新增了运行时权限的动态检测. Andr ...

  9. GestureDetectorl监听

    package com.example.gesturedetectorinterface; /** * write by harvic * 2014-9-25 * blog.csdn.net/harv ...

  10. Git 配置

    在 windows 上安装完 Git 会右键菜单中看到 Git 的快捷打开选项, 点 Git Bash Here 就可以在当前目录下打开 Git 的命令行 Git shell,初次使用 Git 先配置 ...