基于C语言的计算机软件编程技术探究
2018-06-27王肖飞
王肖飞
摘 要:C语言是编程技术中最常见的一种编程语言,因此成为计算机专业学习的基础。当前形势下,C语言在编程的过程中还存在一些问题有待解决,因而,文章立足于笔者多年工作实际,基于C语言的计算机软件编程技术进行深入的分析,以此为计算机软件编程技术的发展而提供相应的建议和对策。
关键词:C语言;编程;计算机
C语言是面向过程的高级程序设计语言,是计算机专业的重要基础核心课程。C语言不仅具有汇编语言的特点,而且还拥有高级语言所具备的特点,例如具备丰富的运算符等特征。随着我国互联网技术的发展,尤其是各种软件编程产业的发展,如何利用C语言编程计算机软件是当前高校计算机专业学生必须掌握的基本技巧,实践证明在高校计算机专业实践中也需积极开展基于C语言的计算机软件编程比赛,因此本文基于笔者工作实践,就C语言的计算机编程技术进行深入的剖析,以此促进C语言技术的发展。本文从C语言的特点入手,阐述计算机编程中C语言的使用技巧,并通过相应的案例解析来具体介绍一些小方法。
1 C语言的概述及特点
1.1 C语言的概述
它由美国贝尔研究所的D.M.Ritchie于1972年推出,尤其是20世纪80年代,美国国家标准局为C语言制定了完整的国际标准语言,标志着C语言的发展。C语言属于一种相对较为新型的高级语言,是高校计算机专业的基础课程之一。是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。C语言的编程必须要满足以下条件:编译器、集成开发环境。尽管在当前计算机技术不断发展的环境下,计算机软件编程种类非常多,但是C语言仍然具有广阔的应用空间(尽管C语言提供许多低级处理)。
1.2 C语言的特点
结合C语言的实践应用,C语言具有以下特点。
1.2.1数据类型丰富
C语言之所以在计算机编程中具有广泛的使用价值,主要是因为C语言的数据类型较为丰富,能够为计算机软件编程提供丰富的数据类型。尤其是近些年随着C语言编程技术的发展,在C语言编程设计中出现了较多的数据类型,为C语言编程提供很好的借鉴。例如在实践中常见的C99就增加了诸多类型,大大丰富了C语言编程的数据类型,从而增加了C语言的编译功能,大大简化了编程技术。例如在高校教学软件编程中对于C语言的应用非常广泛,有效地简化了高校教学软件的简单化运行。
1.2.2 程序语言结构性强
结构化语言就是将自然语言加上程序设计语言的控制结构,其主要是用来描述加工逻辑。C语言属于一种结构性语言,其在编程程序的时候,会按照模块化方式组织程序,这样能够突显C语言的层次清晰性。程序语言结构性强是C语言编程的主要体现,例如在编程中所使用的语句具有严格的使用规则,例如:do…while…语句等语句,可见基于C语言编程的软件具有严格的语言结构性。
1.2.3 语法较为灵活、程序设计自由
C语言最大的特点就是程序设计人员可以按照自己的意愿设计程序,C语言具有很大的自由度,例如在程序设计的过程中,系统不会对数组等因素进行自动检查,如果存在错误程序就会出现故障,因此在具体的C语言编程中需要程序设计人员检查程序。当然程序设计的自由化也容易导致C语言系统对纠错系统的要求比较高,需要程序员加强对纠错系统的设计H。例如在实践中容易出现因C语言书写错误解析而导致程序运行失败的现象。此种问题主要是程序员在编程C语言的时候,因粗心而将一些关键词或声明符写错,导致程序不能运行。
2 C语言编程技术应用策略
2.1 实现指针功能的完全利用
指针功能是C语言编程实现的重要因素,可以说指针在C语言编程中具有极高的使用率。指针通俗讲就是用来操作内存,在编译的过程中,我们需要判断指针的变量类型从而定义指针类型。当然在指针变量定义的过程比需要对其实现初始化设置。如果没有对指针变量进行初始化会造成严重的后果,例如如果指针变量指向的是系统数据区,那么就会对计算机程序造成严重的影响,甚至会造成计算机系统出现死机。因此在C语言编程中必须要注意指针变量初始化问题。另外程序编程人员还需要注意以下问题,例如int(※i1和int※i是不同的,前者指的是指标变量,后者指的是对指针数组i进行定义,因此需要区别。
2.2 利用C语言中的各个语句类型
C语言数据类型比较多,在具体的编程中需要针对不同的语言功能选择相应的语言进行编译,实践证明如果不能根据语言功能选择相应的语言进行编译,就会导致比编译的程序不符合要求,导致程序不具备应用功能。结合多年的教学工作经验及编程实践,常见的编程语句类型主要包括循环语句、选择语句等,当然在具体的软件编程过程中选择单一的编程语句是不现实的,而是将不同的语句融合在一起的过程,其中复合语句是C语言编程中较为常用的。复合语句就是将不同的选择语句进行合并,例如将内循环语句和外循环语句进行合并编程。当然在使用复合语句的时候必须要清楚复合语句的关系,也就是C语言编译器不会对复合语句进行检查,所以在使用复合语句的时候必须要具有逻辑表达式。Switch语句通常用在有多个明确值的选择中进行控制。循环语句是为了在编译中让一个循环体进行条件下的循环,完成程序的编译。总之,在一个健全的C语言编程程序中,每个语句都存在内在的联系性,因此,明白语句之间的关系,懂得合理利用语句格式可以大大提高編程程序的运行速度,保证程序简洁、有效。
2.3 合理利用C话-言的各个函数
在计算机编程中需要选择特定的函数,根据实践C语言编程常用的函数有mam主函数、scanf输入函数以及max求最大值的函数等。每个不同的函数都在程序编程中代表不同的功能,因此,C语言编程设计的函数名称需要根据具体的功能确定,这样可以在具体的设计中实现对函数功能的准确把握,为此在具体的编程中需要程序员在对函数进行定义与编写时对函数的类型进行准确的定义。当然在具体的C语言编程中还需要掌握计算机的算法技巧。算法是C语言编程的重要内容,因此作为程序员必须要掌握算法技巧,目前C语言算法主要是通过流程图和自然语言表达,但是当使用流程图表达算法时需要牢记流程图符号。
3 C语言程序设计案例分析
在具体的C语言编程实践中必须要结合实际情况对编程技术进行优化设计:(1)优化函数的调用。例如在C语言编程中需要对函数调用的传递结构进行禁止,从而避免因C语言函数代码量过大,而造成效率低下的缺陷。(2)将指针变量直接面向的是数组中存在的元素。(3)优化循环语句。循环语句是C语言编程中经常会出现的,因此需要优化循环语句,例如对于较为重要的循环语句进行控制,对于不需要循环的语句可以将其排除。
例1:给予某一具体的实践,然后判断该时间是处于那一年的第几天?
(1)程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。
(2)程序源代码:
#include "stdio.h"
#include "conio.h"
main()
int day,month,year,sum,leap;
printf(“\nplease input year,month,day\n”);
scanf(“%d,%d,%d",&year;,&month;,&day;);
switch(month)/8先计算某月以前月份的总天数*/
{
case l:sum=O;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case lO:sum=273;break;
case ll:sum=304;break;
case 12:sum=334;break;
default:printf(“data error”);break;
)
sum=sum+day;/*再加上某天的天數*/
if(year% 400==O‖l(year%4==O&&ye; ar%1001= 0))/*判断是不是闰年*/
leap=l;
else
leap=0;
if(leap==l&&month;>2)/*如果是闰年且月份大于2,总天数应该加一天*/
SUm++:
printf(“It is the %dth day.”,suln);
getch();
)
4 结语
综上所述,随着计算机技术在社会实践中的广泛应用,加强C语言编程技术的发展是我国编程事业发展的必然要求,因此在具体的C语言编程中必须要仅仅清晰地认识到当前C语言软件编程技术所存在的缺陷,并且积极改进,以此设计出更加科学、人性化以及严谨化的计算机程序软件。