C语言编程课程设计心得

C语言编程课程设计心得

河南城建学院

《C语言程序设计》课程设计报告

适用专业工程管理专业课程名称C语言程序设计指导教师赵军民、魏新红、张芳芳

设计人:051409112王田

201*年6月

一、设计目的和要求

1.通过课程设计全面掌握《C语言程序设计》关键知识点,掌握C语言中数组、指针、结构体、文件等方面的基本知识。

2.通过课程设计了解并掌握C语言程序设计的方法,熟悉C程序设计的开发环境及C程序的调试过程。

3.培养查阅参考资料、手册的自学能力,通过独立思考深入钻研有关问题,学会自己分析、解决问题的方法。

二、内容与设计思想

1、系统功能描述

(1)编译时,主菜单为如下:

0、输入记录1、显示记录2、按姓名查找3、按电话号码查找4、插入记录5、按姓名排序6、删除记录7、记录保存文件8、Quit(2)各项功能:0、输入记录:将所要记录的人的信息输入。

1、显示记录:将所输入的记录一一显示。2、按姓名查找:从所记录中输入姓名查找其信息。3、按电话号码查找:输入学生的号码查找其信息。4、插入记录:在所记录中插入需要记录的人的信息。5、按姓名排序:对已有的记录按姓名第一个字母的

ASCII码大小排列,并一一显示。

6、删除记录:从记录中删除某学生的信息。7、记录保存文件:对输入的学生的信息进行保存。8、退出程序。2、总体设计思想

运用所学知识编写一个简单的学生通讯录管理系统的程序,使它具有以下的功能:输入学生的学号,姓名,班级,电话号码,地址,显示学生记录,增加学生记录,按照学生姓名进行排序,删除学生记录,查找学生记录,保存学生记录。其主要结构用如下图示表示:

三、程序具体分析及操作时问题。

1、程序具体分析。

(1)文件名的使用:include称为文件包含命令,被包含的文件通常是由系统提供的,其扩展名为.h.stdio为standardinputoutput

的缩写,意为“标准输入输出”.代码中只要有用到printfscanf等函数,头文件就要写#include这个在代码中必不可少的,因为编写代码就是为了输出结果;用到像getch()这种键盘输入函数的话,就需要用到#include;用到系统标准输出函数的话,就用到#include;用到字符数组就要用#inciude。

(2)指针使用:如FILE*fp、定义1个文件型指针变量,指针变量名字分别叫fp,定义后fp是指向FILE类型结构体的指针。可以使他指向某个文件的结构体变量,从而通过该结构体变量中的文件信息能够访问该文件。

指针是地址变量:它的值有两种:其一是地址,其二是内容。不同的表达方式可以取不同的值。

指针是可以运算的,它的运算法则与变量是一致的。

(3)结构体:如structLinkList定义结构体为LinkList。当结构体成员为指针的时候,每当给这个成员赋值之前必须先为这个结构体成员分配一个内存空间。

(4)字符数组的比较:如strcmp(student[i].name,name)==0,strcmp(student[i].phone,phone)==0

,strcmp(student[i].phone,phone)==NULL都是用来比较输入的与原有的,当相等时即为0.

(5)实现文件的打开和输入:除有scanf和printf以外还涉及到其他的,如fp=fopen("student.bin","wb"))==NULL用fopen()函数来实

现打开文件;fwrite(&student[i],sizeof(structrecord),1,fp)!=1fwrite用于二进制的文件输入输出也用于读写记录这里的记录是指一串固定长度的字节。

(6)C语言中的一些结构。如for(j=i;j

while(a8);returna;2.操作时问题分析

编好后进行运行时,有一些遗漏问题,如大括号的使用是否对起;语句的使用是否错误;对一个变量是否定义;输出是否有遗漏;数据的使用是否符合规定,定义是否正确等。对于调试,要看程序是否运行且达到预期效果,按照思路能够正确的使用。开始时在姓名输入上出了问题,但是是小问题,修改一下便可实现姓名、学号、班级、电话号码、地址的正常输出。

四、个人任务

得到正确的程序后,并对其进行调试、测试成功后,进行分组任务,而我得到的任务如下程序及解释:

list()/*显示记录中的信息*/{

inti;/*定义整形变量i*/system("cls");/*清屏*/

if(num!=0)/*如果信息记录不为0*/{

printf("\\n\\t\\t***************以下为通讯录所有信息************");

for(i=0;i

}printf("\\n\\t\\t****************************

c语言编程课程心得,c语言编程课程设计心得.docx相关推荐

  1. c语言编程基础心得,C语言编程学习心得体会

    C语言是在国内外广泛使用的一种计算机语言.其语言功能丰富.表达能力强.使用灵活方便.既具有高级语言的优点,又具有低级语言的许多特点,适合编写系统软件.本文是C语言编程学习心得,希望对大家有帮助. C语 ...

  2. c语言对编程对作用,c语言编程心得体会

    c语言编程心得体会 c语言是在国内外广泛使用的一种计算机语言.以下是小编整理的c语言编程心得体会,欢迎大家阅读! c语言编程心得体会1 说到我学习c语言时,真是用千言万语呀!记得刚开始学的时候,我的c ...

  3. c语言自学的论坛,C语言入门课程:C君带你玩编程

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 课程简介 课程面向对计算机编程感兴趣的学习者,可以零基础.无门槛地学习.教学团队使用各种富媒体手段,力求以通识.形象的展示方式诠释生涩的知识要点,在讲授过 ...

  4. C语言核心编程-夏曹俊-专题视频课程

    C语言核心编程-168人已学习 课程介绍         C语言并不是一个高级语言,它实际上属于高级语言与低级语言之间的中间语言,它直接与内存打交道,丰富的数据类型.运算符,但是C语言绝非是一门简单的 ...

  5. 大猛网赚编程之从易语言走向c,浅析易语言网赚应用心得

    以下就是关于易语言网赚应用学习心得内容: 最开始学习易语言,还是因为混互联网比较方便,当年网赚很流行,很多东西希望能够软件化自动化,所以一气之下就学了. 任何一种编程语言都是博大精深的,就算是易语言也 ...

  6. c语言关键词中英翻译机编程,课程设计--C语言关键字中英翻译机

    <课程设计--C语言关键字中英翻译机>由会员分享,可在线阅读,更多相关<课程设计--C语言关键字中英翻译机(21页珍藏版)>请在人人文库网上搜索. 1.课课 程程 设设 计计 ...

  7. c语言程序设计课程设计心得体会,C语言程序课程设计心得体会

    在科技高度发展的今天,计算机在人们之中的作用越来越突出,学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要. 在这个星期里,我们专业的学生在专业老师的带领下进行了c ...

  8. 机械原理c语言程序,机械原理课程设计心得体会范文

    课程设计是培训学生运用本专业所学的理论知识和专业知识来分析解决 实际问题的重要教学环节,是对三年所学知识的复习和巩固.下面是小编整理的机械原理课程设计心得体会,欢迎大家参考! [1]机械原理课程设计心 ...

  9. c语言程序设计选修让我学到的东西,电子课程设计心得体会

    电子课程设计心得体会 电子课程设计心得体会(一) 本学期实时测量技术实验以电子设计大赛的形式,老师命题,学生可以选择老师的题目也可以自己命题,并且组队操作其他的事情(包括设计总体方案.硬件电路.软件设 ...

最新文章

  1. Javascript到PHP加密通讯的简单实现
  2. Vue中数组赋值问题
  3. 8GB内存的树莓派4来啦!国内售价589元,官方还推出配套64位系统
  4. csrf攻击 java_java使用jsp servlet来防止csrf 攻击的实现方法
  5. BigDecimal与Long、int之间的互换
  6. CentOS7在/etc/grub2.conf引导中配置1G大页内存
  7. Redis的持久化 RDB AOF
  8. foreach(表达式中的类型标识符) 内含语句
  9. dns服务器响应 异常,DNS云学堂|快速定位DNS解析异常问题,牢记这四种DNS状态码...
  10. 闪寸 U盘 检测工具 量产工具
  11. DP算法——最大子序列系列Ⅰ
  12. ip代理 12-02-03
  13. mysql8.0初始化密码_MySQL 8.0 手动配置、修改初始化密码
  14. openssl1.1.1下载地址
  15. 批处理修改计算机名为ip,批处理修改计算机名和IP地址
  16. 100-days: twenty-four
  17. HEIF图像编码标准-python读取HEIF图像
  18. 今日芯声 | 美团王兴回应不支持支付宝:淘宝为什么不支持微信支付?
  19. 2023软件测试面试全方位话术,你想要的全都有
  20. r语言和python培训

热门文章

  1. 深度学习手势识别带你玩转神庙逃亡
  2. Java枚举原来还能这么用
  3. 深入Java中的位操作
  4. 赛森机器人_对比评测3款最贵的扫地机器人,戴森性能太强了
  5. html轮播图速度加快,各位老师,为什么我用jq写的轮播图,移入移出速度会加快...
  6. JDK8特性--Stream(求和,过滤,排序)
  7. dlopen failed: library “libopencv_java4.so“ not found 解决
  8. img should be PIL Image. Got <class ‘numpy.ndarray‘>
  9. python 词频统计,分词笔记
  10. QThread: Destroyed while thread is still running