如何才能提高用C语言编程的能力

一. 学好C语言的运算符和运算顺序

这是学好《C程序设计》的基础,C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单,但初学者往往会觉的这种表达式难读,关键原因就是对运算符和运算顺序理解不透不全。当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则显得十分重要。在学习中,只要我们对此合理进行分类,找出它们与我们在数学中所学到运算之间的不同点之后,记住这些运算也就不困难了,有些运算符在理解后更会牢记心中,将来用起来得心应手,而有些可暂时放弃不记,等用到时再记不迟。

先要明确运算符按优先级不同分类,《C程序设计》运算符可分为15种优先级,从高到低,优先级为1 ~ 15,除第2、3级和第14级为从右至左结合外,其它都是从左至右结合,它决定同级运算符的运算顺序。下面我们通过几个例子来说明:

(1) 5*8/4%10 这个表达式中出现3种运算符,是同级运算符,运算顺序按从左至右结合,因此先计算5 *8=40,然后被4除,结果为10,最后是%(求余数)运算,所以表达式的最终结果为10%10 = 0;

(2)a = 3;b = 5;c =++ a* b ;d =a + +* b;

对于c=++a*b来说,按表中所列顺序,+ +先执行,*后执行,所以+ + a执行后,a的值为4,由于+ +为前置运算,所以a的值4参与运算,C的值计算式为4*5=20而不是3*5=15了;而对于d=a++*b来说,由于a + +为后置运算,所以a值为4参与运算,使得d的值仍为20,而a参与运算后其值加1,值为5。 这个例子执行后,a的值为5,b的值为5,c的值为20,d的值也是20;

(3)(a = 3,b = 5,b+ = a,c = b* 5)

例子中的“,”是逗号结合运算,上式称为逗号表达式,自左向右结合,最后一个表达式的结果值就是逗号表达式的结果,所以上面的逗号表达式结果为40,a的值为3,b的值为8,c的值为40。

(4)a=5;b=6;c=a>b?a:b;

例中的a>b?a:b是一个三目运算,它的功能是先做关系运算a>b部分,若结果为真,则取问号后a的值,否则取冒号后b的值,因此c的值应该为6,这个运算可以用来代替if…else…语句的简单应用。

二.学好C语言的四种程序结构

(1)顺序结构

顺序结构的程序设计是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执行顺序是自上而下,依次执行。

例如;a = 3,b = 5,现交换a,b的值,这个问题就好象交换两个杯子水,这当然要用到第三个杯子,假如第三个杯子是c,那么正确的程序为: c = a; a = b; b = c; 执行结果是a = 5,b = c = 3如果改变其顺序,写成:a = b; c = a; b = c; 则执行结果就变成a = b = c = 5,不能达到预期的目的,初学者最容易犯这种错误。 顺序结构可以独立使用构成一个简单的完整程序,常见的输入、计算,输出三步曲的程序就是顺序结构,例如计算圆的面积,其程序的语句顺序就是输入圆的半径r,计算s = 3.14159*r*r,输出圆的面积s。不过大多数情况下顺序结构都是作为程序的一部分,与其它结构一起构成一个复杂的程序,例

怎么提高c语言编程能力,如何才能提高用C语言编程的能力相关推荐

  1. 换硬币c语言编程_如何才能成为编程高手?别人都不告诉你的东西,我来说给你听...

    在IT行业摸爬滚打十几年的应该知道,下面简单说说关于编程需要掌握的技术与相关知识.很多人感觉编程很难.很多人问我,我英语不好,数学不好能做编程吗? 我非常肯定的说,能做编程.编程的领域很广泛.细分出来 ...

  2. 如何才能提高文档编写能力呢[转]

    如何才能提高文档编写能力呢 该如何才能提高文档编写能力呢,可以采用了以下几种方法,只要坚持不懈的做下去,相信会有提高. 1.尝试编写个人简历和经历,用文字来认识自己是不错的方法.要想别人认识你,首先自 ...

  3. 如何才能提高自己的沟通能力

    如何才能提高自己的沟通能力 公众号:"王堃阳口才前线"专注演讲口才20年,学演说找王堃阳,专治各种不会说! 所谓提高沟通能力,无非是两方面:一是提高理解别人的能力,二是增加别人理解 ...

  4. 不同语言编程能整合到一起吗_学习编程入门指南

    每天都看到很多对编程感兴趣的人在问是不是可以自学软件开发,或者应该怎么自学编程才能入门.在这篇文章里,我将尝试重现一个初学者在学习计算机编程时可能会碰到的问题,并尽量提供相应的解决思路,希望对初学者有 ...

  5. Computer:少儿编程—每个人都应该学习编程,它能教你如何思考—编程入门的简介(编程语言的特点种类开发工具对比人类语言)、编程应用、编程意义之详细攻略

    Computer:少儿编程-每个人都应该学习编程,它能教你如何思考-编程入门的简介(编程语言的特点&种类&开发工具&对比人类语言).编程应用.编程意义之详细攻略 导读:乔布斯说 ...

  6. 【机器智能】机器到底怎样才能赶得上人类的思考能力?

    图:an intelligent robot writing code , by 禅与计算机程序设计艺术&Stable Diffusion. 在"人工智能"这个词中,&qu ...

  7. 如何自学编程(二)-怎样选择入门语言?

    上次分享了一篇文章:<如何自学编程?>从初学者的角度给大家介绍了一些基本的概念和一些术语. 今天将继续给大家分享一些知识和一些建议.如果你以一个初学者的身份选择了这条路,那你该选择什么编程 ...

  8. c语言小白能自学吗,零基础小白学编程,该如何入门?

    编程作为当下最热门的职业,颇受年轻人的喜爱,很多人因为其高薪资,职业前景好的特点,纷纷选择转行加入编程的行列,但是,对于一个对编程知之甚少的小白来说,想要入门,应该从哪一步先开始,才能少走弯路呢? 入 ...

  9. 做嵌入式编程,为什么用的是C语言而不是C++呢?

    1.前言 几十年来,嵌入式软件工程师们一直在争论是否应该使用C++替代C语言进行开发工作.根据2019年IEEE和github的市场调查显示,微控制器制造商提供的软件大部分都是由C语言编写. 事实上, ...

  10. 课程能力建设:提高五年制高职教学有效性的重要途径

    课程能力建设:提高五年制高职教学有效性的重要途径 摘  要:加强课程能力建设--合理架构与教育目标相对应的课程体系,使教育价值蕴含于课程内容.彰显于课程实施--是实现教学有效性的重要途径.文章结合五年 ...

最新文章

  1. Bags of Binary Words | 词袋模型解析
  2. 优化我们的业务之Timecard
  3. python读取文件第n行-Python实现读取文件最后n行的方法
  4. python汽车行驶工况_什么叫车辆行驶工况
  5. Beacon Mountain 测试版 – 常见问题解答
  6. Android OTA升级(1):编译升级全包
  7. 关于面向对象和面向过程本质的区别(个人感悟)
  8. 拓端tecdat|R语言广义相加模型 (GAMs)分析预测CO2时间序列数据
  9. Atitit.php opcode虚拟机指令集 分类以及详细解释
  10. linux卸载java rpm_详解Linux中查看jdk安装目录、Linux卸载jdk、rpm命令、rm命令参数...
  11. FishC笔记—14 讲 字符串:各种奇葩的内置方法
  12. 世界名牌CD机解码芯片大全
  13. 期权定价模型之经典--BS模型
  14. 计算机出问题英语,电脑突然蓝屏还有英文怎么回事
  15. 红米android刷机在哪,红米手机怎么刷机 红米手机刷机教程大全
  16. 计算机开机检测dhcp,电脑开机显示dhcp是什么意思
  17. 非线性光学散射偏微分方程组的matlab求解仿真
  18. 苹果自带地图进行定位
  19. 经典同步时序逻辑电路分析汇总(第六道)(同步四进制可逆加减法计数器)
  20. HDR电视显示技术概况及标准发展前景汇总

热门文章

  1. Spring中@DependsOn注解的作用及实现原理解析
  2. ajax 上传图片进度条,ajax实现图片上传与进度条
  3. 当浏览器版本过低时提示升级浏览器
  4. 大牛直播跨平台RTSP/RTMP转RTMP转发SDK
  5. 世界上最畅销的JSON和XML编辑器-Altova XMLSpy 2021版发布,升级版JSON Grid View归来!
  6. cimfax显示无法连接到服务器,CimFAX传真机软件
  7. 饥荒联机一直显示正在启动服务器,饥荒联机版启动服务器时间长 | 手游网游页游攻略大全...
  8. 饥荒服务器运行时cpu的占用,饥荒联机版服务器卡顿原因分析及解决教程_饥荒联机版服务器卡顿怎么解决_游戏堡...
  9. 上海大华条码称代码_上海大华条码秤的调试方法
  10. python 概率分布_Python中的联合概率分布