手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>C/C++>列表

C语言学习中的四大难点

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
 C语言是一种结构化语言,适于按模块化方式组织程式,层次十分清楚,易于调试和维护。C语言的表现能力和处理能力极强,不但具备丰富的运算符和数据类型,便于实现各类复杂的数据结构,而且还能够直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言的功能强大、应用广泛,他成为了现在软件研发的最常用的语言之一,同时也是二级考试中很受欢迎的语言之一,能为今后参加三级、四级学习和考试打下良好的基础。

  下面我们重点来讲一讲C语言学习过程中所特有的一些知识难点。

  算术表达式

  C语言中的算术运算有单目运算和双目运算两种。单目运算指的是该运算符只能连接一个运算量,除了正负号外,主要有 (加1)和--(减1),他有前缀和后缀之分,主要区别在于前缀 n表示先令n=n 1,然后取n的值,后缀n 表示先取n的值,然后令n=n 1。双目运算是指该运算符的左右两侧都必须有运算量。常见的双目运算符有: 、-、、/、%等。诸如x y、x/y、xy等运算均为双目运算。碰到双目运算时,要特别注意数据的类型问题。具体需要有以下几点:

  1.双目运算的结果的类型必须和运算量的类型一致;

  2.假如参和双目运算的两个运算量类型不一致,系统将自动把其中的一个进行类型转换,使两个运算量的类型一致后再进行运算。自动转换的规则是:按“向高看齐”的原则进行转换。在几个基本的数据类型中,由高到低的排列顺序为:double、int、char。

  2000年春季考试中有一道选择题:

  下列程式的输出结果是( )

A) 3 B) 3.2 C) 0 D) 3.07

main
 double d=3.2 int xy
x=1.2 y=x 3.8/5.0
printf″%d \n″ dy

  解析:本题中,程式先执行语句x=1.2,根据赋值运算的类型转换规则,这里要将double型的常量1.2转换为int型,即取整为1,然后将1赋值给变量x。接下来执行语句y=x 3.8/5.0;根据运算符的优先级,先计算小括号内,再计算除法,最后执行赋值运算。小括号内的运算过程为:先将整型变量x的值1转换为double型1.0,然后和3.8进行加法运算,得到中间结果4.8。接着进行除法运算4.8/5.0,其结果小于1.0,这里没有必要计算出精确值,因为接着进行赋值运算,赋值号左边的变量y的类型为整型,于是对这个小于1.0的中间结果进行取整,结果为0,于是变量y的值为0。因此该程式的输出结果应该是0,即正确答案为C。
逗号表达式

  C语言中的逗号表达式的形式如下:

表达式1,表达式2,表达式3,……,表达式n

  学习逗号表达式时一定要掌控他的要领:1.逗号表达式的运算过程为:从左往右逐个计算;2.逗号表达式是作为一个整体的,他的最终结果就是最后一个表达式(也即表达式n)的值;3.逗号运算符的优先级别是任何运算符中最低的。只有这样,才能真正掌控这种运算,得出正确的解答。

  2001年秋季考试中有一道选择题(此题曾在1998年春季考试中出现过):

  若已定义x和y为double类型,则表达式:x=1y=x 3/2的值是:

A) 1 B) 2 C) 2.0 D) 2.5

  解析:该表达式就是个逗号表达式,所以要按照运算顺序先运算x=1,所以变量x的值为1.0,然后运算y=x 3/2,此表达式中需先计算二个整数相除3/2,结果为整数1,然后再和x相加,结果为2.0。由于逗号表达式x=1y=x 3/2的值就是其最后一个表达式即y=x 3/2的值,此值即为2.0,所以正确的答案应该是C。

  复合语句

  复合语句就是用一对“{}”把若干语句括起来构成一个语句组,复合语句是C语言中最重要的一种语句,语句的形式如下:

语句l;语句2;…;语句n

  一个复合语句在语法上视为一条语句,在复合语句中,花括号内的语句数量不限,能够有执行语句,也能够有定义部分,定义部分应该出现在可执行语句的前面,复合语句能够嵌套使用,例如:{语句1;{语句2;…;语句n;}}。



[1] [2] 下一页

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

热点关注
IDC资讯 虚拟主机 域名注册 托管租用 vps主机 智能建站
网站运营 建站经验 策划盈利 搜索优化 网站推广 免费资源
网站联盟 联盟新闻 联盟介绍 联盟点评 网赚技巧
行业资讯 业界动态 搜索引擎 网络游戏 门户动态 电子商务 广告传媒
网络编程 Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术 Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 Internet Explorer
网页制作 FrontPages Dreamweaver Javascript css photoshop fireworks Flash
程序设计 Java技术 C/C++ VB delphi
网络知识 网络协议 网络安全 网络管理 组网方案 Cisco技术
操作系统 Win2000 WinXP Win2003 Mac OS Linux FreeBSD
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 价格总览 | 资讯中心 | 友情链接 | 网站地图 | 招贤纳士 | RSS