-
分类:网络应用 语言:简体中文 大小:未知 发布时间:13-05-12
内容简介:《TCP/IPæœ€ä½³å…¥é—¨ï¼šå› ç‰¹ç½‘åŽŸç†ä¸Žåº”用(原书第6版)》涵盖了网络行业ä¸å¿…备的TCP/IP基础知识,全é¢è®²è§£äº†TCP/IPçš„è¿ä½œåŽŸç†ã€‚《TCP/IP 最佳入门(原书第6版)》从DoD模型ã€OSI七层模型和TCP/IPå议的关系开始介ç»ï¼Œè¿›è€Œè¯¦ç»†ä»‹ç»äº†ç½‘络接入层ã€ç½‘络互连层ã€ä¸»æœºå¯¹ä¸»æœºå±‚å’Œåº”ç”¨å±‚ï¼ŒæŽ¥ç€æ·±å…¥å‰–æžäº†GGPã€EGPã€GPå’ŒIGPç‰é‡è¦çš„路由å议,探讨了å议分æžå’Œæµé‡åˆ†æžé—®é¢˜ï¼Œè¿˜å¢žåŠ äº†IPv6的说明åŠå®žé™…æ“作。  《TCP/IPæœ€ä½³å…¥é—¨ï¼šå› ç‰¹ç½‘åŽŸç†ä¸Žåº”用(原书第6版)》是作者从丰富的教å¦ä¸Žå®žè·µç»éªŒæ€»ç»“而æˆçš„完整教程,目å‰å·²ç»æ˜¯ç¬¬6æ¬¡æ”¹ç‰ˆï¼Œå¯¹éœ€è¦æŽŒæ¡TCP/IP原ç†çš„读者而言是ä¸å¯å¤šå¾—的入门指å—,对网络专业技术人员也æžå…·å‚考价值。 电å书www.minxue.net下载内容截图: åºç¬¬1ç« è®¡ç®—æœºæ¦‚è®º11.1 计算机的应用11.2 计算机的å‘展11.3 计算机的ç§ç±»31.4 计算机如何工作31.5 计算机的计算å•ä½31.6 认识个人计算机(PC)41.7 ä»Žå•æœºåˆ°ç½‘络7第2ç« ç½‘ç»œæ¦‚è¿°82.1 什么是网络82.2 局域网的目的和特色82.2.1 目的82.2.2 特色92.3 网络的拓扑(Topology)92.4 网络的应用112.5 å› ç‰¹ç½‘ä¸Šçš„åº”ç”¨12第3ç« OSI七层ã€DoD模型和TCP/IPåè®®143.1 简介143.2 TCP/IP的历å²143.3 DoD模型153.4 OSI与TCP/IP的对应163.4.1 OSI的起缘163.4.2 OSIçš„å„层功能163.5 OSI七层ã€DoD模型和TCP/IPå议的对应19第4ç« ç½‘ç»œæŽ¥å…¥å±‚204.1 网络接入层204.2 以Ethernet为范例29第5ç« ç½‘ç»œäº’è¿žå±‚325.1 简介325.2 å› ç‰¹ç½‘åè®®325.2.1 å› ç‰¹ç½‘å议的主è¦åŠŸèƒ½325.2.2 IPå议的特性325.2.3 IPåè®®çš„åˆ†ç»„æ ¼å¼335.2.4 IP地å€365.2.5 VLSM(å¯å˜é•¿åº¦çš„å网掩ç )435.2.6 CIDR(æ— ç±»åž‹åŸŸé—´è·¯ç”±)455.2.7 Supernet(超网)485.2.8 IPmulticast(IP组æ’)515.3 å› ç‰¹ç½‘æŽ§åˆ¶æ¶ˆæ¯åè®®565.3.1 ICMPå议概è¦575.3.2 ICMPåè®®çš„åˆ†ç»„æ ¼å¼575.3.3 å„ç§ICMPåˆ†ç»„è¯¦ç»†æ ¼å¼585.4 地å€è§£æžåè®®635.5 逆å‘地å€è§£æžåè®®665.5.1 RARPå议的功能665.5.2 RARPå议的应用665.5.3 RARPå议的工作方å¼665.5.4 RARPçš„æ¶ˆæ¯æ ¼å¼67第6ç« ä¸»æœºå¯¹ä¸»æœºå±‚686.1 简介(å«TCP)686.1.1 ä¼ è¾“æŽ§åˆ¶åè®®686.1.2 TCPå议主è¦çš„功能686.1.3 TCPå议的通信端å£716.1.4 æ•°æ®ä¼ 输的特殊控制功能766.1.5 TCP的连接ã€ä¸æ–与é‡ç½®776.2 ç”¨æˆ·æ•°æ®æŠ¥åè®®816.2.1 概述816.2.2 UDP的特性826.2.3 SNMP:简å•网络管ç†åè®®83第7ç« åº”ç”¨å±‚877.1 简介877.2 万维网(WWW)877.2.1 WWW的特性877.2.2 HTTP与WWW887.2.3 URL与WWW887.2.4 WWWçš„æµè§ˆå™¨897.2.5 WWWçš„æ–‡æœ¬æ ¼å¼897.2.6 基本HTMLè¯æ³•907.2.7 公共网关接å£917.2.8 Java与WWW927.2.9 è¶…æ–‡æœ¬ä¼ è¾“åè®®937.3 DNS网站å称系统947.3.1 主机的命å(éžå±‚次化)947.3.2 主机的命å(层次化)947.3.3 DNS的分层管ç†957.3.4 DNSæœåŠ¡å™¨çš„ç§ç±»967.3.5 网站å称的解æž967.3.6 DNS网站åç§°è§£æžçš„æŸ¥è¯¢977.3.7 åç§°æœåŠ¡å™¨çš„æ¶ˆæ¯æ ¼å¼977.3.8 æ“作系统与DNS997.3.9 网站å称的缩写1007.3.1 0高效率的网站åç§°è§£æž1007.3.1 1网站å称注册1017.3.1 2䏿–‡ç½‘ç«™1017.4 E-mail电åé‚®ä»¶ä¼ è¾“åè®®1017.4.1 E-mail的基本è¿ä½œæ¨¡å¼1017.4.2 TCP/IPæä¾›çš„E-mailæ ‡å‡†1027.4.3 电å邮件地å€1027.4.4 é‚®ä»¶ä¼ è¾“åè®®1037.4.5 E-mailçš„ä¼ è¾“ç¼–ç 1107.4.6 UUç¼–ç 1107.5 Telnet1117.5.1 Telnetåè®®1117.5.2 Telnet的登录æ¥éª¤1127.5.3 Telnet的基本æœåŠ¡1127.5.4 Telnet的原ç†1127.5.5 Telnet的选项1137.5.6 Telnetçš„å商选项1147.5.7 Telnet指令说明1147.6 æ–‡ä»¶ä¼ è¾“åè®®(FTP)1157.6.1 ä½¿ç”¨æ–‡ä»¶ä¼ è¾“åè®®(FTP)的目的1157.6.2 æ–‡ä»¶ä¼ è¾“åè®®(FTP)çš„æ“作模å¼1157.6.3 FTP连接端å£çš„规定1167.6.4 FTP的使用方法1177.6.5 æ–‡ä»¶ä¼ è¾“åè®®(FTP)的特点1187.7 DHCP动æ€ä¸»æœºé…ç½®åè®®1187.7.1 DHCP概述1207.7.2 DHCPçš„åˆ†ç»„æ ¼å¼1207.7.3 DHCP选项嗿®µ(Options)1217.7.4 DHCPåè®®è¿ä½œæµç¨‹1227.8 简å•网络管ç†åè®®(SNMP)1237.8.1 网络管ç†çš„æž¶æž„1237.8.2 SNMP的指令架构1247.8.3 SNMPçš„ç®¡ç†æž¶æž„1257.8.4 SNMPçš„æ¶ˆæ¯æ ¼å¼1267.9 网络文件系统(NFS)1297.9.1 NFS的原ç†1297.9.2 RPC与XDR1307.9.3 NFS与FTP的比较1307.1 0IPConfig诊æ–工具1317.1 1Ping诊æ–工具132第8ç« ç½‘å…³å¯¹ç½‘å…³åè®®(GGP)1338.1 简介1338.2 网关与路由表的生æˆ1338.3 æ ¸å¿ƒç½‘å…³ä¸Žéžæ ¸å¿ƒç½‘å…³1338.4 å› ç‰¹ç½‘è¿žæŽ¥æž¶æž„134第9ç« å¤–éƒ¨ç½‘å…³åè®®1399.1 网络扩充的问题1399.2 自治系统的概念1409.3 外部网关åè®®(EGP)1409.3.1 EGPæ¶ˆæ¯æ ¼å¼1419.3.2 EGPçš„é™åˆ¶145第10ç« è¾¹ç•Œç½‘å…³åè®®(BGP)14610.1 BGP简介14610.2 AS(自治系统)14610.3 BGP的使用时机14710.4 BGPçš„æ¶ˆæ¯æŠ¥å¤´æ ¼å¼14910.5 Opençš„æ¶ˆæ¯æ ¼å¼15110.6 Updateçš„æ¶ˆæ¯æ ¼å¼15210.7 Keepaliveæ¶ˆæ¯æ ¼å¼15410.8 Notificationæ¶ˆæ¯æ ¼å¼15510.9 错误处ç†(ErrorHandling)156第11ç« BGP的路由属性15811.1 BGP的路由属性(PathAttributes)简介15811.2 è‘—å的强制类(Well-knownmandatory)15811.2.1 AS-Path属性15811.2.2 Next-Hop属性15911.2.3 Origin属性16211.3 è‘—åçš„éžå¼ºåˆ¶ç±»(Well-knowndiscretionary)16211.3.1 LocalPreference属性16311.3.2 AtomicAggregate属性16311.4 选项转移类(Optionaltransitive)16311.4.1 Aggregator属性16411.4.2 Community属性16411.5 选项éžè½¬ç§»ç±»(Optionalnontransitive)16511.6 BGP的有é™çŠ¶æ€æœº16611.7 Weight属性17111.8 BGPçš„åŒæ¥åŒ–(Synchronization)17211.9 BGP的路由选择17311.1 0BGPå’ŒEGP的异åŒ174第12ç« å†…éƒ¨ç½‘å…³åè®®(IGP)17512.1 简介17512.2 RIPåè®®17612.2.1 慢收敛问题17612.2.2 慢收敛的解决方å¼17812.2.3 水平分割更新法17812.2.4 Holddown(Timer)17812.2.5 æ¯’æ€§é€†å‘æ³•17812.2.6 RIPæ¶ˆæ¯æ ¼å¼17912.3 HELLOåè®®17912.3.1 HELLOçš„æ¶ˆæ¯æ ¼å¼18012.3.2 gated程åº(RIPã€HELLOã€EGP的结åˆ)18112.4 IGRP(InteriorGatewayRoutingProtocol)18112.4.1 选择路由18212.4.2 IGRP的特点18212.5 EIGRP18212.5.1 EIGRPçš„å†åˆ†é…(Redistribution)18312.5.2 EIGRPçš„è¿ä½œåŽŸç†18312.5.3 建立邻近表(Buildingtheneighbortable)18412.5.4 å‘现路由(DiscoveringRoutes)18612.5.5 选择路由(ChoosingRoutes)18612.5.6 维护路由(MaintainingRoutes)18712.6 OSPF18812.6.1 OSPF简介18812.6.2 OSPF的互è”网络18912.6.3 OSPF的工作原ç†19012.7 路由å议和被路由å议的整ç†19512.7.1 分类的路由(ClassfulRouting)19612.7.2 éžåˆ†ç±»çš„路由(ClasslessRouting)19612.8 è·ç¦»å‘é‡å’Œè¿žæŽ¥çжæ€çš„æ•´ç†19712.8.1 è·ç¦»å‘é‡(DistanceVector)路由åè®®(RIP&IGRP)19812.8.2 连接状æ€(Link-state)路由åè®®20012.9 内部路由的比较202第13ç« å议分æž-Ethereal的使用20313.1 å…费分组获å–软件Ethereal20313.2 Ethereal的实际应用211第14ç« æµé‡ç»Ÿè®¡-MRTG的使用22014.1 MRTG简介22014.2 设置SNMP22114.3 安装Perlå’ŒMRTG22514.4 设置MRTGé…置,产生æµé‡å›¾230第15ç« å› ç‰¹ç½‘åè®®IPv623415.1 å…¨çƒIPv6åœ°å€æœ€æ–°å‘展23415.2 IPv6简介23515.2.1 IPv6的缘由23515.2.2 IPv6的地å€23815.2.3 IPv6çš„Unicast地å€ç±»åž‹23915.2.4 IPv6çš„Anycast地å€ç±»åž‹24115.2.5 IPv6çš„Multicast地å€ç±»åž‹24115.3 IPv6与IPv4的差异242第16ç« IPv6地å€çš„规划24316.1 简介24316.2 å¯èšåˆçš„å…¨çƒå”¯ä¸€åœ°å€24316.3 TLAå’ŒNLA地å€çš„分é…原则24516.4 IPv6Sub-TLA地å€çš„åˆå§‹é…ç½®246第17ç« IPv6的实际æ“作24817.1 支æŒIPv6的相关产å“24817.2 CiscoRouterçš„IPv6实际æ“作24817.3 Windows2003客户端快速连上IPv6网络25317.3.1 æ–°ä¸€ä»£å› ç‰¹ç½‘åè®®IPv6forWindows2003的安装25417.3.2 申请与测试TunnelBroker25517.4 使用Windows2008快速连上IPv6网络25917.5 Windows2008使用Etherealè§£æžIPv6æ•°æ®åŒ…265第18ç« ç»¼åˆæµ‹éªŒä¸Žè§£ç”270附录Aè§£æžIPv6æ•°æ®åŒ…278附录BRFCçš„å–å¾—287附录C ...
-
分类:æ“作系统 语言:简体中文 大小:未知 发布时间:13-05-12
内容简介: 《Unix & Linux大妿•™ç¨‹ã€‹å†…容简介:Unix是计算机å‘展历å²ä¸Šæœ€æˆåŠŸçš„æ“作系统家æ—。它诞生于è´å°”实验室,尔åŽè¿…速æˆä¸ºä¸–界上æ“作系统的主æµå¹¶å»¶ç»è‡³ä»Šã€‚Linux派生于Unix,并且在å°åž‹æœºå’Œæ¡Œé¢è®¡ç®—机领域æˆä¸ºå’Œå¾®è½¯çš„Windows并驾é½é©±çš„æ“ä½œç³»ç»Ÿå®¶æ—。HarleyHahn从20世纪80å¹´ä»£å¼€å§‹ï¼Œäº²èº«ä½“éªŒäº†å‡ å¹³æ•´ä¸ªUDIX以åŠLinuxæ“作系统的å‘展历å²ã€‚他所著的Unixå’ŒLinuxæ•™ç¨‹ï¼Œç§‰æ‰¿äº†ä»–çš„ä¸€è´¯é£Žæ ¼ï¼Œå¹½é»˜é£Žè¶£è€ŒåˆçŸ¥è¯†æ¸Šåšã€‚在《Unix & Linux大妿•™ç¨‹ã€‹ä¸ï¼Œä¸ä»…å¯ä»¥å…¨é¢å¦ä¹ 到Unixå’ŒLinuxæ“作系统的工作原ç†å’Œä¸»è¦å‘½ä»¤ï¼Œè¿˜å¯ä»¥çŸ¥æ™“Unixå’ŒLinuxå‘展å²ä¸Šçš„许多奇闻趣事。 解释了622个Unix专业术è¯ï¼Œè®¸å¤šæœ¯è¯éƒ½ç»™å‡ºäº†å…¶åކ岿¥æº 第1ç« unix简介第2ç« ä»€ä¹ˆæ˜¯linux?什么是unix第3ç« unix连接第4ç« å¼€å§‹ä½¿ç”¨unix第5ç« gui:图形用户界é¢ç¬¬6ç« unix工作环境第7ç« unix键盘使用第8ç« èƒ½å¤Ÿç«‹å³ä½¿ç”¨çš„程åºç¬¬9ç« æ–‡æ¡£èµ„æ–™ï¼šunix手册与info第10ç« å‘½ä»¤è¯æ³•第11ç« shell第12ç« ä½¿ç”¨shell:å˜é‡å’Œé€‰é¡¹ç¬¬13ç« ä½¿ç”¨shell:命令和定制第14ç« ä½¿ç”¨shell:åˆå§‹åŒ–文件第15ç« æ ‡å‡†iï¼o:é‡å®šå‘和管é“第16ç« è¿‡æ»¤å™¨ï¼šç®€ä»‹å’ŒåŸºæœ¬æ“作第17ç« è¿‡æ»¤å™¨ï¼šæ¯”è¾ƒå’ŒæŠ½å–第18ç« è¿‡æ»¤å™¨ï¼šç»Ÿè®¡å’Œæ ¼å¼åŒ–第19ç« è¿‡æ»¤å™¨ï¼šé€‰å–ã€æŽ’åºã€ç»„åˆåŠå˜æ¢ç¬¬20ç« æ£åˆ™è¡¨è¾¾å¼.第21ç« æ˜¾ç¤ºæ–‡ä»¶ç¬¬22ç« vi文本编辑器第23ç« unix文件系统第24ç« ç›®å½•æ“作第25ç« æ–‡ä»¶æ“作第26ç« è¿›ç¨‹å’Œä½œä¸šæŽ§åˆ¶é™„å½•aunix命令一览表附录bunix命令分类表附录cè®å‘½ä»¤å°ç»“附录dasciiç 附录e忘记rootå£ä»¤çš„å¤„ç†æ–¹æ³•附录f时区与24å°æ—¶åˆ¶æ—¶é—´é™„录gshell选项和shellå˜é‡æœ¯è¯è¡¨ ...
-
分类:ç¼–ç¨‹å¼€å‘ 语言:简体中文 大小:未知 发布时间:13-05-12
第1ç« ajax安全介ç»1.1 ajax基础知识1.1.1 什么是ajax1.1.2 动æ€html(dhtml)1.2 ajaxæž¶æž„(architecture)的转å˜è¿‡ç¨‹1.2.1 胖客户端架构1.2.2 瘦客户端架构1.2.3 ajax:最适åˆçš„æž¶æž„1.2.4 从安全角度看胖客户端应用程åº1.2.5 从安全角度看瘦客户端应用程åº1.2.6 从安全角度看ajaxæž¶æž„1.3 一场完美的攻击风暴1.3.1 䏿–å¢žåŠ çš„å¤æ‚度ã€é€æ˜Žåº¦åŠä»£ç é‡1.3.2 社会å¦é—®é¢˜1.3.3 ajax应用程åºï¼šå¯Œæœ‰å¸å¼•åŠ›çš„ã€æˆ˜ç•¥ä¸Šçš„ç›®æ ‡1.4 æœ¬ç« å°ç»“第2ç« åŠ«æŒ2.1 攻击hightechvactions.net2.1.1 攻击票务系统2.1.2 攻击客户端数æ®ç»‘定. 2.1.3 攻击ajax apl2.2 黑夜ä¸çš„盗窃第3ç« web攻击3.1 基本攻击分类3.1.1 èµ„æºæžšä¸¾3.1.2 傿•°æ“纵3.2 其他攻击3.2.1 è·¨ç«™è¯·æ±‚ä¼ªé€ æ”»å‡»3.2.2 钓鱼攻击3.2.3 æ‹’ç»æœåŠ¡(denial.of-service,dos)3.3 ä¿æŠ¤web应用程åºå…å—èµ„æºæžšä¸¾å’Œå‚æ•°æ“作的攻击3.4 æœ¬ç« å°ç»“第4ç« ajax攻击层é¢4.1 什么是攻击层é¢4.2 ä¼ ç»Ÿw曲应用程åºçš„æ”»å‡»å±‚é¢4.2.1 表å•输入4.2.2 cookie-4.2.3 报头4.2.4 éšè—的表å•输入4.2.5 è¯·æ±‚å‚æ•°4.2.6 ä¸Šä¼ æ–‡ä»¶4.3 ä¼ ç»Ÿçš„webåº”ç”¨ç¨‹åºæ”»å‡»ï¼šä¸€ä»½æˆç»©å•4.4 webæœåŠ¡çš„æ”»å‡»å±‚é¢4.4.1 webæœåŠ¡çš„æ–¹æ³•4.4.2 webæœåŠ¡çš„å®šä¹‰4.5 ajax应用程åºçš„æ”»å‡»å±‚é¢4.5.1 ajaxåº”ç”¨ç¨‹åºæ”»å‡»å±‚é¢çš„æ¥æº4.5.2 黑客的最爱4.6 æ£ç¡®çš„输入验è¯4.6.1 有关黑åå•åŠå…¶ä»–è¡¥ä¸çš„问题4.6.2 æ²»æ ‡ä¸æ²»æœ¬4.6.3 白åå•输入验è¯4.6.4 æ£åˆ™è¡¨è¾¾å¼4.6.5 关于输入验è¯çš„其他想法4.7 验è¯å¯Œå®¢æˆ·ç«¯çš„用户输入4.7.1 éªŒè¯æ ‡è®°è¯è¨€4.7.2 验è¯äºŒè¿›åˆ¶æ–‡ä»¶4.7.3 验è¯javascfiptæºä»£ç 4.7.4 验è¯åºåˆ—化数æ®4.8 关于由用户æä¾›çš„内容4.9 æœ¬ç« å°ç»“……第5ç« ajax代ç çš„å¤æ‚性第6ç« ajax应用程åºçš„逿˜Žåº¦ç¬¬7ç« åŠ«æŒajax应用程åºç¬¬8ç« æ”»å‡»å®¢æˆ·å‚¨å˜å‚¨ç¬¬9ç« ç¦»çº¿ajax应用程åºç¬¬10ç« è¯·æ±‚æ¥æºé—®é¢˜ç¬¬11ç« web mashupå’Œèšåˆç¨‹åºç¬¬12ç« æ”»å‡»è¡¨çŽ°å±‚ç¬¬13ç« javascriptè •è™«ç¬¬14ç« æµ‹è¯•ajax应用程åºç¬¬15ç« ajax框架分æžé™„录a samyè •è™«æºä»£ç 附录b yamannerè •è™«æºä»£ç ...
-
分类:综合资料 语言:简体中文 大小:未知 发布时间:13-05-12
第一篇 数值计算第1章 线性代论方程组的求解1. 1 全选主元高斯消去法1. 2 全选主元高斯-约当消去法1. 3 复系数方程组的全选主元高斯消去法1. 4 复系数方程组的全选主元高斯-约当消去法1. 5 求解三对角线方程组的追赶法1. 6 一般带型方程组的求解l. 7 求解对称方程组的分解法1. 8 求解对称正定方程组的平方根法1. 9 求解大型稀疏方程组的全选主元高斯-约当消去法1. 10 求解托伯利兹方程组的列文逊方法1. 11 高斯-赛德尔迭代法1. 12 求解对称正定方程组的共轭梯度法l. 13 求解线性最小二乘问题的豪斯荷尔德变换法1. 14 求解线性最小二乘问题的广义逆法1. 15 病态方程组的求解第2章 矩阵运算2. 1 实矩阵相乘2. 2 复矩阵相乘2. 3 实矩阵求逆的全选主元高斯-约当法2. 4 复矩阵求逆的全选主元高斯-约当法2. 5 对称正定矩阵的求逆2. 6 托伯利兹矩阵求逆的特兰持方法2. 7 求行列式值的全选主元高斯消去法2. 8 求矩阵秩的全选主元高斯消去法2. 9 对称正定矩阵的乔里斯基分解与行列式的求值2. 10 矩阵的三角分解2. 11 一般实矩阵的QR分解2. 12 一般实矩阵的奇异值分解2. 13 求广义逆的奇异值分解法第3章 矩阵特征值与特征向量的计算3. 1 约化对称矩阵为对称三对角阵的豪斯荷尔德变换法3. 2 实对称三对角阵的全部特征值与特征向量的计算3. 3 约化一般实矩阵为赫申伯格矩阵的初等相似变换法3. 4 求赫申伯格矩阵全部特征值的QR方法3. 5 求实对称矩阵特征值与特征向量的雅可比法3. 6 求实对称矩阵特征值与特征向量的雅可比过关法第4章 非线性方程与方程组的求用4. 1 求非线性方程实根的对分法4. 2 求非线性方程一个实根的牛顿法4. 3 求非线性方程一个实根的埃特金迭代法4. 4 求非线性方程一个实根的连分式解法4. 5 求实系数代数方程全部根的QR方法4. 6 求实系数代数方程全部根的牛顿-下山法4. 7 求复系数代数方程全部根的牛顿-下山法4. 8 求非线性方程组一组实根的梯度法4. 9 求非线性方程组一组实根的拟牛顿治4. 10 求非线性方程组最小二乘解的广义逆法4. 11 求非线性方接一个实根的蒙特卡洛法4. 12 求实函数或复函数方程一个复根的蒙特卡洛法4. 13 求非线性方程组一组实根的蒙特卡洛法第5章 插值5. 1 一元全区间不等距插值5. 2 一元全区间等距插值5. 3 一元三点不等距插值5. 4 一元三点等距插值5. 5 连分式木等距插值5. 6 连分式等距插值5. 7 埃尔米特不等距插值5. 8 埃尔米特等距插值5. 9 埃特金不等距逐步插值5. 10 埃特金等距逐步插值5. 11 光滑不等距插值5. 12 光滑等距插值5. 13 第一种边界条件的三次样条函数插值.微商与积分5. 14 第二种边界条件的王次样条函数插值.微商与积分5. 15 第三种边界条件的三次样条函数插值.微商与积分5. 16 二元三点插值5. 17 二元全区间插值第6章 数值积分6. 1 变步长梯形求积法6. 2 变步长辛卜生求积法6. 3 自适应梯形求积法6. 4 龙贝格求积法6. 5 计算一维积分的连分式法6. 6 高振荡函数求积法6. 7 勒让德-高斯求积法6. 8 拉盖尔-高斯求积法6. 9 埃尔米特-高斯求积法6. 10 切比雪夫求积法6. 11 计算一维积分的蒙特卡洛法6. 12 变步长辛卜生二重积分法6. 13 计算多重积分的高斯方法6. 14 计算二重积分的连分式法6. 15 计算多重积分的蒙特卡洛法第7章 常微分方程(组)的求解7. l 全区间积分的定步长欧拉方法7. 2 积分一步的变步长欧拉方法7. 3 全区间积分的定步长维梯方法7. 4 全区间积分的定步长龙格-库塔法7. 5 积分一步的变步长龙格-库塔法7. 6 积分一步的变步长基尔方法7. 7 全区间积分的变步长基尔方法7. 8 全区间积分的变步长默森方法7. 9 积分一步的连分式法7. 10 全区间积分的连分式法7. 11 全区间积分的双边法7. 12 全区间积分的阿当姆斯预报校正法7. 13 全区间积分的哈明方法7. 14 积分一步的特雷纳方法7. 15 全区间积分的特雷纳方法7. 16 积分刚性方程组的吉尔方法7. 17 二阶微分方程边值问题的数值解法第8章 拟合与逼近8. l 最小工乘曲线拟合8. 2 切比雪夫曲线拟合8. 3 最佳一致逼近的里米兹方法8. 4 短形域的最小二乘曲面拟合第9章 数据处理与回归分析9. 1 随机样本分析9. 2 一元线性回归分析9. 3 多元钱性回归分析9. 4 逐步回归分析9. 5 半对数数据相关9. 6 对数数据相关第10章 极值问题10. 1 一维极值连分式法10. 2 n维极值连分式法10. 3 不等式约束线性规划问题10. 4 求n维极值的单形调优法10. 5 求约束条件下n维极值的复形调优法第11章 教学交换与德波11. 1 傅里叶级数逼近11. 2 快速傅里叶变换11. 3 快速沃什变换11. 4 五点三次平滑11. 5 离散随机线性系统的卡尔曼滤波11. 6 a-B-r滤波第12章 特殊函数12. l 伽马函数12. 2 不完全伽马函数12. 3 误差函数12. 4 第一类整数阶贝塞耳函数12. 5 第二类整数阶贝塞耳函数12. 6 变型第一类整数阶贝塞耳函数12. 7 变型第二类整数阶贝塞耳函数12. 8 不完全贝塔函数12. 9 正态分布函数12. 10 t-分布函数12. 11 X2分布函数12. 12 F-分布函数12. 13 正弦积分12. 14 余弦积分12. 15 指数积分12. 16 第一类椭圆积分12. 17 第二类椭圆积分第13章 随机数的产生13. 1 0到1之间均匀分布的一个随机数13. 2 0到三之间均匀分布的随机数序列13. 3 任意区间内均匀分布的一个随机整数13. 4 任意区间内均匀分布的随机整数序列13. 5 任意均值与方差的一个正态分布随机数13. 6 任意均值与方差的正态分布随机数序列第14章 多项式与连分式函数的计算14. 1 一维多项式求值14. 2 一维多项式多组求值14. 3 二维多项式求值14. 4 复系数多项式求值14. 5 多项式相乘14. 6 多项式相除14. 7 复系数多项式相乘14. 8 复系数多项式相除14. 9 函数连分式的计算第15章 江数运算15. 1 复数乘法15. 2 复数除法15. 3 复数乘幂15. 4 复数的N次方根15. 5 复数指数15. 6 复数对数15. 7 复数正弦15. 8 复数余弦15. 9 复数作图第二篇 非数值计算第16章 排序16. l 整数冒泡排序16. 2 实数冒泡排序16. 3 字符冒泡排序16. 4 字符串冒泡排序16. 5 整数快速排序16. 6 实数快速排序16. 7 字符快速排序16. 8 字符串快速排序16. 9 整数希尔排序16. 10 实数希尔排序16. 11 字符希尔排序16. 12 字符串希尔排序16. 13 整数难排序16. 14 实数难排序16. 15 字符堆排序16. 16 字符串堆排序16. 17 关键字成员为整数的结构排序16. 18 关键字成员为实数的结构排序16. 19 关键字成员为字符的结构排序16. 20 关键字成员为字符率的结构排序16. 21 磁盘文件排序16. 22 拓扑分类第17章 查找17. 1 关键字成员为技型.实型及字符的结构体数组的顺序查找17. 2 关键字成员为字符率的结构体数组的顺序查找17. 3 磁盘随机文本文件的顺序查找17. 4 整型有序表的对分查找17. 5 实型有序表的对分查找17. 6 字符串有序表的对分查找17. 7 整型.实型及字符型关键字成员有序的结构体数组的对分查找17. 8 字符串关键字成员有序的结构体数组的对分查找17. 9 接关键字有序的磁盘随机文本文件的对分查找17. 10 磁盘顺序文本文件的字符串匹配第18章 图形板式下读写屏幕象点18. 1 设置显示模式18. 2 CGA图形模式(04H, 320 x 200, 4色)18. 3 EGA图形模式(10H, 640 X 350, 16色)18. 4 VGA图形模式(12H, 640 x 480, 16色)18. 5 VGA图形模式(13H32 x 200, 256色)18. 6 TVGA图形模式(SBH, 800 X 60016色)18. 7 TVGA图形模式(SDH 640 X 480, 256色)18. 8 TVGA图形模式(SEH, 800 X 600, 256色)18. 9 TVGA图形模式(5FH, 1024 X 768, 16色)18. 10 TVGA图形模式(62H, 1024 X 768, 256色)第19章 基本图形操作19. l 直线19. 2 线段构成的图形19. 3 虚线19. 4 单点划线19. 5 双点划线19. 6 坐标轴19. 7 矩形及其填充19. 8 矩形城图形的清除19. 9 知形域图形的复制19. 10 短形城图形的平移19. 11 圆形域图形的复制19. 12 圆形域图形的平移19. 13 由中心.半轴(半径)以及起终点夹角画椭圆(圆)弧19. 14 由中心.半轴(半径)以及起终点夹角画扇形19. 15 由中心与半轴(半径)画椭圆(圆)19. 16 由中心.半轴(半径)以及起终点夹角画扇形填充19. 17 由中心与半轴(半径)画椭圆(圆)填充19. 18 抛物线19. 19 双曲线19. 20 三次多项式曲线19. 21 一般函数曲线19. 22 短形域三维图形透视图19. 23 矩形域三维图形手行投影19. 24 圆形域王维图形平行投影第20章 汉字操作20. l 小汉字库的建立20. 2 ASCII码字符图形库的建立20. 3 一个汉字的显示20. 4 一行汉字的显示20. 5 ASCII码字符串按图形显示20. 6 汉字菜单的显示20. 7 汉字菜单的选择参考文献 本书是针对工程上常用的行之有效的算法而编写的C语言函数程序集,在第一版的基础上作了修改和扩充。书中包括了近几年出现的许多新算法。全书分为数值计算与非数值计算两部分。其中数值计算部分的内容包括:线性代数方程组的求解、矩阵运算、矩阵特征值与特征向量的计算、非线性方程与方程组的求解、插值、数值积分、常微分方程(组)的求解、拟合与逼近、数据处理与回归分析、极值问题、数学变换与滤波、特殊函数、随机数的产生、多项式与连分式函数的计算、复数运算;非数值计算部分的内容包括:排序、查找、图形模式下读写屏幕象点、基本图形操作、汉字操作等。 书中所有的算法函数程序均在IBM-PC系列及其兼容机上调试通过。并存放在一张3寸软盘上,此软盘附在本书的封三上。 本书可供广大科研人员、工程技术人员及管理工作者阅读使用,也可作为高等院校的《数值分析》或《程序设计》等类似课程的参考书 ...
-
分类:数据库 语言:简体中文 大小:未知 发布时间:13-05-12
第1篇 SQL基础篇第0章 数据库的运行环境及权限设置0.1 SQL Server数据库的SQL代码运行环境0.2 SQL Server数据库中的数据权限0.2.1 服务器角色0.2.2 数据库角色0.2.3 应用程序角色0.3 0racle数据库的SQL代码运行环境0.4 0racle数据库中的数据权限0.4.1 对象权限0.4.2 系统权限0.4.3 角色权限0.5 MySQL数据库的SQL代码运行环境0.6 MySQL数据库中的数据权限0.6.1 服务器检查是否允许用户连接0.6.2 检查登录用户的操作第1章 数据库与SQL概述1.1 数据库概述1.1.1 数据库基本概念1.1.2 数据管理技术简史1.2 数据模型1.2.1 实体描述1.2.2 实体间联系及联系的种类1.2.3 概念模型的表示方法1.2.4 常用的3种数据模型1.3 关系数据库1.3.1 关系数据库的基本概念1.3.2 关系数据库的设计1.3.3 设计关系数据库的过程1.3.4 数据库规范化1.3.5 苑式枚举1.4 SQL概述1.4.1 SQL简史1.4.2 SQL的特点1.4.3 SQL的约定和要求1.5 小结第2章 创建、修改和删除数据库2.1 SQL代码运行环境2.2 创建数据库的语法结构2.3 利用createdatabase语句创建数据库2.3.1 创建默认数据库2.3.2 创建指定数据库文件位置的数据库2.3.3 创建多数据文件、多日志文件的数据库2.3.4 创建多个文件组的数据库2.4 修改数据库2.4.1 查看数据库的语法结构2.4.2 利用sp_helpdb函数查看数据库2.4.3 重命名数据库的语法结构2.4.4 利用sp_renamedb函数重命名数据库2.4.5 增加数据库的数据文件2.4.6 增加数据库的日志文件2.4.7 修改数据库文件2.4.8 删除数据库文件2.5 删除数据库2.5.1 利用SQL代码删除数据库2.5.2 利用IF和SQL语句动态删除数据库2.6 小结第3章 创建和操作数据库表3.1 数据库表概述3.2 创建数据库表3.2.1 创建数据库表的语法结构3.2.2 创建普通数据库表3.3 创建临时数据库表3.3.1 创建局部临时表3.3.2 创建全局临时表3.4 创建含有列约束的数据库表3.4.1 创建含有不能为空字段的数据库表3.4.2 创建含有主键、唯一键字段的数据库表3.4.3 创建主键、外键关联的数据库表3.4.4 创建含有check约束字段的数据库表3.5 创建含有默认、计算字段的数据库表3.5.1 创建含有默认值字段的数据库表3.5.2 创建含有计算字段的数据库表3.6 创建含有自动编号、排序字段的数据库表……第2篇 SQL数据查询和处理篇第3篇 SQL常用对象技术篇第4篇 SQL高级性能篇 内容提要周峰、张振东、张术强编著的《SQL结构化查询语言速学宝典(第2版)》讲解SQL语句在数据库开发中的技术和技巧,每个实例都具有很强的实用性与可操作性。全书共分22章,分别讲解了数据库的运行环境及权限设置、SQL和数据库的基本概念、数据库、数据库表、SQL查询、SQL数据类型、SQL高级查询、SQL嵌套子查询、SQL多表连接查询、SQL数据处理、SQL流程控制、视图、存储过程、函数、游标、触发器、事务、安全性、SQL高级特性、数据库的维护、动态SQL和SQL高级查询。《SQL结构化查询语言速学宝典(第2版)》中的SQL代码以SQL Server数据库为主。另外,《SQL结构化查询语言速学宝典(第2版)》还重点讲解Oracle和DB2关系数据库中SQL的区别。 《SQL结构化查询语言速学宝典(第2版)》中的实例有的是作者的经验积累,有的源于实际开发项目,读者在深入研究《SQL结构化查询语言速学宝典(第2版)》内容后,能够在短时间内掌握数据库开发技术,快速提高编程水平。 《SQL结构化查询语言速学宝典(第2版)》适合SQL语言初学者、爱好者及具有一定编程经验的初级编程人员使用,也适合一线软件开发人员学习,还可以供大中专院校师生及培训机构学员阅读,亦适合想快速提高实际编程水平的编程人员和从事数据库编程的开发人员使用。内容截图 ...
-
分类:编程开发 语言:简体中文 大小:未知 发布时间:13-05-12
目录: 系列教材序言前言第一章 delphi 基础知识1.1 delphi的特点1.2 delphi 7的集成开发环境1.3 实例——hello,world!1.4 小对第二章 object pascal 语言基础2.1 delphi的编程风格2.2 标识符2.3 数据类型2.4 赋值语句2.5 过程与函数2.6 控制语句2.7 实例——随机加减法测试2.8 小结第三章 面向对象编程3.1 oop基本概念3.2 类的基本概念3.3 类的封装.3.4 类的继承性3.5 类的多态性3.6 异常处理3.7 小结第四章 应用程序开发框架4.1 delphi的文件结构4.2 单元文件的内部结构4.3 项目管理4.4 应用程序类tapplication4.5 项目的编译和调试4.6 小结第五章 基本窗体设计5.1 form(窗体)组件5.2 向窗体中添加组件5.3 单文档窗体5.4 多文档窗体5.5 小结第六章 基本组件的应用6.1 组件的概念6.2 文本输入组件6.3 按钮及分类组件6.4 列表组件6.5 滚动组件6.6 表格组件6.7 日期和时间组件6.8 多选项卡组件6.9 小结第七章 用户界面设计7.1 菜单设计7.2 工具栏与状态栏7.3 信息对话框7.4 对话框组件7.5 实例——文档编辑器7.6 小结第八章 图形图像设计8.1 画布技术8.2 图形图像的类和组件8.3 图形图像编程应用8.4 使用鼠标绘制图形8.5 小结第九章 多媒体技术9.1 多媒体基础知识9.2 多媒体组件9.3 多媒体编程9.4 小结第十章 数据库基础10.1 数据简介10.2 sql结构化查询语言10.3 delphi访问数据库的机制10.4 delphi的数据库管理工具10.5 建立第一个数据库应用程序10.6 小结第十一章 开发数据库应用程序11.1 数据集组件11.2 数据控制组件11.3 人事管理系统开发11.4 小结第十二章 报表和图表设计12.1 数据报表的设计12.2 图表设计12.3 小结第十三章 网络编程技术13.1 网络基础知识13.2 tcp/ip编程13.3 使用网络函数编程13.4 小结参考文献 ...
-
分类:C/C++ 语言:简体中文 大小:未知 发布时间:13-05-12
目录: 第1篇 c语言基础篇第1章 c语言概述 2c语言是现代应用最为广泛的编程语言,深受广大程序员的喜爱。本章将简要介绍c语言的产生发展、c语言的特点、标准及c语言流程等内容。并通过一个完整的例子演示c程序开发过程中的项目创建、源代码编写、编译及调试的全过程。同时,将分析c语言程序构成特点。1.1 c语言发展历史 21.2 c语言的特点 31.2.1 c语言的基本特点 31.2.2 c语言的优点 41.2.3 c语言的缺点 51.3 c语言的标准 51.3.1 c标准概述 51.3.2 c语言的新标准 61.3.3 编译器对c标准的支持 101.4 c语言开发流程 111.4.1 功能分析 111.4.2 划分任务 111.4.3 编写源代码 121.4.4 编译和链接 121.4.5 修改源代码 131.4.6 功能测试 13.1.4.7 发布程序 131.4.8 维护和修改 131.5 第一个c程序 131.5.1 创建项目 141.5.2 输入源代码 151.5.3 编译链接 161.5.4 调试 161.6 c程序构成分析 171.6.1 头文件 171.6.2 主函数 171.6.3 其他组成部分 181.7 良好的编程规范 211.7.1 完备和详尽的程序注释 211.7.2 整齐的代码书写格式 211.7.3 简洁清晰的命名 221.8 c语言在不同领域的扩展应用 221.8.1 单片机方面 221.8.2 labview方面 221.8.3 labwindows/cvi方面 231.8.4 matlab方面 231.8.5 javascript方面 231.8.6 并行计算方面 241.8.7 linux平台 241.9 小结 24第2章 典型的c语言开发环境 25c语言的成功及大范围的应用也造就了丰富的c语言编译器。对于用户来说,学习c语言要紧密结合c编译器或者c集成开发环境来进行。程序员要想快速高效地开发c程序,必须首先熟悉c语言开发环境的使用。本章将介绍几种主流的c语言开发环境。2.1 c语言开发环境简介 252.1.1 c语言开发环境的构成 252.1.2 典型的c语言开发环境 262.2 使用turbo c开发 302.2.1 turbo c的开发环境简介 302.2.2 turbo c的配置文件 312.2.3 用turbo c创建c程序 312.2.4 编译链接程序 322.2.5 运行程序 332.3 使用visual studio开发 342.3.1 microsoft visual c++的开发环境简介 342.3.2 使用visual studio 2008创建c程序 352.3.3 编译链接程序 382.3.4 调试运行程序 382.4 使用dev-c++开发 382.4.1 dev-c++的开发环境简介 392.4.2 dev-c++开发环境的设置 392.4.3 使用dev-c++创建c程序 412.4.4 编译和运行程序 412.4.5 升级dev-c++ 422.5 使用code::blocks开发 422.5.1 code::blocks的开发环境简介 422.5.2 code::blocks开发环境的设置 432.5.3 使用code::blocks创建c程序 452.5.4 编译运行程序 462.6 小结 46第3章 c语言数据类型 47应用程序一般在计算机的内存中运行,对各种数据进行操作。c语言中的数据具有不同的类型,用于不同对象的表示。数据是c语言基本的操作对象。本章将首先介绍内存中程序和数据的存储,然后将介绍c语言中各种数据类型及其特点。3.1 数据的存储 473.1.1 内存单元 473.1.2 数据的存储 483.1.3 程序在内存中的映射 493.2 数据类型简介 493.2.1 基本类型 493.2.2 构造类型 513.2.3 指针类型 513.2.4 空类型 513.3 标识符和关键字 513.3.1 标识符 523.3.2 关键字 523.4 分隔符 533.4.1 单分隔符 543.4.2 组合分隔符 543.5 常量 543.5.1 直接常量 543.5.2 符号常量 553.6 变量 583.6.1 变量声明 583.6.2 变量初始化 593.7 整型数据 603.7.1 整型数据的声明 603.7.2 整型数据的存储 613.7.3 整型常量 653.7.4 整型数据的输入 663.7.5 整型数据的输出 683.8 字符型数据 693.8.1 字符型变量的声明 693.8.2 字符型的存储 703.8.3 字符型常量 713.8.4 转义字符 723.8.5 字符型数据的输入 733.8.6 字符型数据的输出 743.9 浮点型数据 753.9.1 浮点型数据的声明 753.9.2 浮点型数据的存储 763.9.3 浮点型常量 773.9.4 浮点型数据的输入 783.9.5 浮点型数据的输出 793.10 类型转换 803.10.1 混合运算中的类型转换 803.10.2 强制类型转换 833.11 c99新增数据类型 843.12 小结 86第4章 运算符和表达式 87第 3章介绍了c语言中的基本数据类型,这些是c语言最基本的操作对象。而在第4章中,读者将了解到最基本的操作方法,即运算符和表达式。在c语言中,通过运 算符将常量、变量等操作对象组成表达式,而后,由表达式进一步构成c语句。可以说,运算符和表达式是c语言中最基本的操作方法。4.1 运算符 874.1.1 运算符概述 874.1.2 算术运算符 884.1.3 赋值运算符 904.1.4 关系运算符 924.1.5 逻辑运算符 934.1.6 条件运算符 944.1.7 位运算符 954.1.8 其他运算符 984.1.9 运算符优先级和结合性 1024.2 表达式 1044.2.1 算术表达式 1044.2.2 赋值表达式 1054.2.3 逗号表达式 1064.2.4 关系和逻辑表达式 1074.3 小结 109第5章 c语句及流程控制结构 110第 4章介绍了c语言中的运算符和表达式,这些是构成c语句的基本单元。c语句,即c语言中的操作命令,用于使计算机完成特定的功能。一条完整的语句必须以 “;”结束。c语言的源程序是由一系列的语句组成的,这些语句可以完成变量声明、赋值和控制输入/输出等操作。由于计算机能识别的是机器指令,因此,编译 系统将一条语句转换成若干条机器指令来执行。c语言中的语句包括说明语句、表达式语句、循环语句、条件语句、开关语句、复合语句、空语句和返回语句等,下 面分别进行介绍。5.1 说明语句 1105.2 表达式语句 1105.3 复合语句 1115.4 循环语句 1125.4.1 while循环语句 1125.4.2 do…while循环语句 1135.4.3 for循环语句 1145.5 条件语句 1165.5.1 单分支if条件结构 1165.5.2 双分支if条件结构 1165.5.3 阶梯式if…else…if条件结构 1175.5.4 if条件结构总结 1195.6 开关语句 1205.7 跳转语句 1215.7.1 goto跳转语句 1215.7.2 break跳转语句 1225.7.3 continue跳转语句 1235.8 函数调用语句 1245.9 空语句 1255.10 返回语句 1265.11 c语言的流程控制结构 1275.12 小结 128第6章 格式化输入/输出 129使 用计算机程序解决问题时,需要由用户输入数据,通过程序进行运算后,再输出结果。由此过程可以看到,程序中输入/输出占有相当重要的地位。在c语言中,所 有的数据输入/输出都是由库函数完成的,因此都是函数语句。在前面各章的实例中,曾使用过printf()函数和scanf()函数进行数据的输出和输 入。本章将详细介绍这两个函数的使用,同时,还将介绍其他一些用于输入和输出的函数。6.1 格式化输出函数printf() 1296.1.1 printf()函数的格式 1296.1.2 printf()函数的格式字符 1306.1.3 printf()函数的修饰符 1316.1.4 典型的printf()函数实例 1346.1.5 动态设置输出宽度和精度 1386.1.6 printf()函数的返回值 1396.1.7 理解输出列表 1406.1.8 printf格式化输出函数综合实例 1426.2 格式化输入函数scanf() 1436.2.1 scanf()函数的格式 1436.2.2 scanf()函数格式字符串 1456.2.3 scanf()函数注意问题 1466.2.4 scanf()函数的返回值 1486.2.5 格式化输入函数scanf()综合实例 1486.3 其他常用的输入/输出函数 1496.3.1 字符读入函数getchar() 1496.3.2 字符读入函数getch() 1506.3.3 字符串读入函数gets() 1516.3.4 字符输出函数putch() 1526.3.5 字符输出函数putchar() 1536.3.6 字符串输出函数puts() 1536.3.7 格式化内存缓冲区输出函数sprintf() 1546.3.8 格式化内存缓冲区输入函数sscanf() 1556.4 小结 156第7章 数组 157在 前面章节中介绍了c语言的基本数据类型,包括整型、字符型和实型。以这些基本数据类型为基础,c语言还提供几种构造数据类型。构造类型数据是由基本类型数 据按一定规则组成的,数组就是其中一种构造数据类型。在程序中用循环结构可以很方便地处理数组。本章将详细介绍c语言中数组的使用。7.1 了解数组 1577.1.1 使用数组的好处 1577.1.2 数组的概念 1587.1.3 数组的维数 1607.2 一维数组 1617.2.1 一维数组的声明 1617.2.2 一维数组的存储 1647.2.3 一维数组的引用 1647.2.4 向函数传递一维数组 1667.2.5 一维数组的初始化 1667.3 二维数组 1697.3.1 二维数组的声明 1697.3.2 二维数组的存储 1707.3.3 二维数组的引用 1717.3.4 二维数组的初始化 1737.4 字符数组和字符串 1757.4.1 一维字符串数组 1767.4.2 了解字符串 1777.4.3 字符串的操作函数 1787.4.4 字符串的输入输出 1797.4.5 二维字符串数组 1817.5 多维数组 1827.6 数组的基本应用 1827.6.1 反转字符串 1827.6.2 查找最大值 1837.6.3 数据排序 1857.7 小结 186第8章 函数 187使 用c语言编程,就肯定会使用到函数。c语言允许用户使用一些编译环境自带的库函数,例如使用printf()函数输出变量的值,使用scanf()函数接 收用户的输入等。合理使用库函数可以大大简化程序设计过程。同时,为了有利于程序的模块化,促进程序资源的共享。c语言也支持用户使用自定义函数。本章将 详细介绍函数的概念、调用、作用域等相关知识。8.1 函数的概念 1878.1.1 什么是函数 1878.1.2 函数的分类 1888.1.3 函数的定义 1898.1.4 main()函数 1918.2 函数的工作过程 1928.2.1 程序结构 1928.2.2 函数执行过程 1938.3 编写函数 1938.3.1 函数头 1938.3.2 返回类型 1948.3.3 参数列表 1958.3.4 函数体 1958.3.5 函数原型 1968.4 函数的参数 1978.4.1 形参和实参 1978.4.2 参数传递过程 1988.4.3 值调用 1988.4.4 引用调用 1998.4.5 数组作为函数参数 2018.4.6 指针作为函数参数 2058.4.7 main()函数的参数 2068.5 函数调用 2088.5.1 函数调用方式 2088.5.2 被调函数的说明 2098.5.3 函数的返回值 2108.6 几种典型的函数调用形式 2128.6.1 赋值调用与引用调用 2128.6.2 嵌套调用 2138.6.3 递归调用 2158.7 函数及其变量的作用域 2218.7.1 函数的作用域 2218.7.2 函数的变量作用域 2218.8 小结 222第9章 指针 223指针是c语言中广泛使用的一种数据类型。利用指针可以操作各种基本的数据类型,以及数组等复合数据结构,甚至使用指针还可以访问函数。正确理解和使用指针对于成功进行c语言程序设计是至关重要的。指针是c语言最显著的特征,同时又是c语言最危险的特征。例如,在使用指针的程序中,常常因为用错指针导致程序出错,而这类错误却很难发现。更严重的是,对未初始化的指针进行操作可能会导致系统崩溃。9.1 内存和变量 2239.1.1 计算机内存 2239.1.2 变量的存储 2249.2 指针和简单变量 2259.2.1 指针的概念 2259.2.2 创建指针 2269.2.3 初始化指针变量 2279.2.4 指针变量的引用 2289.2.5 给函数传递指针 2329.3 指针变量的赋值 2329.3.1 初始化赋值 2329.3.2 取地址赋值 2339.3.3 指针之间赋值 2339.3.4 数组赋值 2339.3.5 字符串赋值 2349.3.6 函数入口赋值 2349.4 指针和数组的关系 2349.4.1 指针、数组和地址间的关系 2349.4.2 指针变量的运算 2369.4.3 用指针操作数组元素 2379.5 指向多维数组的指针 2409.5.1 理解二维数组的地址 2409.5.2 多维数组的指针表示 2429.5.3 指向多维数组的指针变量 2439.5.4 数组名作为函数的参数 2479.5.5 指向数组的指针小结 2509.6 指针和字符串 2519.6.1 字符串的指针表示 2519.6.2 字符串指针作函数参数 2539.6.3 字符数组和字符指针的区别 2549.7 指针数组 2569.7.1 指针数组的概念 2569.7.2 用指针数组处理字符串 2589.7.3 指针数组作函数参数 2599.8 指向指针的指针 2619.8.1 理解指向指针的指针 2619.8.2 二级指针变量与数组 2639.9 指针和函数 2689.9.1 返回指针的函数 2689.9.2 指向函数的指针 2699.10 指针和const变量 2729.10.1 用const控制指针 2739.10.2 const的几种特殊用法 2749.11 指针总结 2749.11.1 明确分辨各种指针类型 2759.11.2 正确理解指针 2759.12 小结 276第10章 结构 277在 实际的程序设计中,经常需要处理具有不同数据类型的一组数据。例如,在学生成绩统计表中,应该包含如下几项:姓名(字符型)、学号(整型或字符型)、年龄 (整型)、性别(字符型)和成绩(整型或浮点型)。由于数组中各元素的类型和长度都必须一致,因此不能用一个数组存放这一组数据。在这种情况下,c语言中 可以使用“结构”,这是一种构造数据类型,相当于其他高级语言中的记录类型。10.1 结构的定义 27710.2 结构变量的定义 27810.2.1 先定义结构,再定义结构变量 27910.2.2 在定义结构的同时,定义结构变量 27910.2.3 直接说明结构变量 27910.3 结构变量的使用 28010.4 结构变量的初始化 28110.5 结构数组 28310.5.1 结构数组的定义和引用 28310.5.2 结构数组的初始化 28510.5.3 结构数组实例 28510.6 结构指针 28610.6.1 定义结构指针 28610.6.2 结构指针的引用 28710.6.3 用指针处理结构数组 28910.7 嵌套结构 29110.7.1 包含数组的结构 29110.7.2 包含指针的结构 29210.7.3 包含结构的结构 29210.8 向函数传递结构 29610.8.1 传递结构变量的值 29610.8.2 传递结构指针到函数 29710.9 小结 298第11章 联合、枚举和位域 299在c语言中,除了数组和指针外,还定义了联合和枚举两种聚合数据类型,并且可以进行类型说明和定义位域,这些是特殊形式的数据类型。下面分别进行讲解。11.1 联合 29911.1.1 定义联合类型 29911.1.2 定义联合变量 30011.1.3 联合变量成员的引用 30111.1.4 联合变量数组 30111.1.5 联合变量指针 30211.1.6 在结构中嵌套联合类型 30311.1.7 结构和联合的区别 30511.2 枚举 30611.2.1 定义枚举类型 30611.2.2 定义枚举变量 30711.2.3 枚举类型变量的赋值 30811.3 类型说明 31011.4 二进制数据存储 31111.4.1 数据的存储 31211.4.2 不同数据类型的二进制表示 31211.5 位运算 31511.5.1 位逻辑运算符 31511.5.2 移位运算符 31811.5.3 位运算的复合赋值运算符 31811.5.4 位运算的用途 31911.6 位域 32011.6.1 定义位域结构 32011.6.2 位域变量的声明 32111.6.3 位域的使用 32211.6.4 位域与联合的使用 32311.7 小结 324第12章 预处理 325c语言的程序中可包括各种以符号#开头的编译指令,这些指令称为预处理命令。预处理命令属于c语言编译器,而不是c语言的组成部分。通过预处理命令可扩展c语言程序设计的环境。预处理命令通常在程序编译时进行一些符号处理,其并不执行具体的硬件操作。c语言中的预处理命令主要有宏定义指令、文件包含指令和条件编译指令,还有其他一些调试时使用的指令。本章将介绍预处理程序各命令的使用方法。12.1 预处理简介 32512.1.1 预处理功能 32512.1.2 预处理命令 32512.2 宏定义命令 32612.2.1 无参数的宏定义 32612.2.2 带参数的宏定义 32912.2.3 #undef命令 33112.2.4 预处理操作符#和## 33112.3 文件包含指令 33412.4 条件编译指令 33512.4.1 #if、#else、#endif命令 33612.4.2 #elif命令 33712.4.3 #ifdef、#ifndef命令 33912.4.4 使用#defined和#undef 34012.5 其他预处理命令 34012.5.1 预定义的宏名 34012.5.2 重置行号和文件名命令#line 34112.5.3 修改编译器设置命令#pragma 34212.5.4 产生错误信息命令#error 34212.6 内联函数 34312.7 小结 344第13章 存储管理 345在大多数情况下,存储管理都是操作系统的功能。一般的程序设计语言不提供对内存的管理。而c语言提供了管理内存的相关函数,可实现内存的动态存储管理。这是c语言功能强大的一个表现,本章将介绍c语言的内存组织方式和动态存储管理。13.1 内存组织方式 34513.1.1 内存组织方式 34513.1.2 堆和栈的比较 34613.2 c语言的动态存储管理 34713.3 分配内存函数——malloc() 34713.4 带初始化的分配内存函数——calloc() 34913.5 调整已分配内存函数——realloc() 35013.6 释放分配的内存函数——free() 35213.7 丢失的内存 35413.8 小结 356第2篇 c语言进阶篇第14章 字符及字符串操作 358在实际的程序设计中,经常需要处理文本数据。在c语言中,文本数据按字符串格式保存。对于字符串,前面已经介绍过如何用字符数组保存字符串、用字符指针指向一个字符串常量、字符串的输入与输出函数等。在c语言的库函数中提供了丰富的处理字符及字符串的函数,本章将介绍这些函数的用法。14.1 字符的操作 35814.1.1 检查英文字母函数 35914.1.2 检查字母数字函数 36014.1.3 检查控制字符函数 36014.1.4 十进制数字检查函数 36114.1.5 可打印字符检查函数 36214.1.6 包含空格的可打印字符检查函数 36314.1.7 格式字符检查函数 36414.1.8 小写英文字母检查函数 36514.1.9 大写英文字母检查函数 36614.1.10 控制字符检查函数 36714.1.11 十六进制数字检查函数 36814.1.12 大写字符转换函数 36814.1.13 小写字符转换函数 36914.1.14 ascii字符转换函数 37014.1.15 大写字符宏转换函数 37114.1.16 小写字符宏转换函数 37114.2 字符串的存储 37214.2.1 字符串的静态存储 37214.2.2 字符串的动态存储 37314.3 字符串的操作 37414.4 检测字符串长度函数 37514.5 查找字符串 37614.5.1 查找字符位置函数——strchr() 37614.5.2 查找相同字符函数——strspn() 37814.5.3 查找包含字符位置函数——strcspn() 37814.5.4 查找包含字符函数——strpbrk() 37914.5.5 查找子串函数——strstr() 38014.5.6 字符查找函数——memchr() 38114.5.7 字符包含函数——strrchr() 38214.6 比较字符串 38314.6.1 比较字符串函数——strcmp() 38314.6.2 比较部分字符串函数——memcmp() 38414.6.3 比较时忽略大小写函数——stricmp() 38614.6.4 包含结束符的比较函数——strncmp() 38714.7 连接字符串 38814.7.1 连接字符串函数——strcat() 38814.7.2 连接部分字符函数——strncat() 39014.8 复制字符串 39114.8.1 复制字符串函数——strcpy() 39114.8.2 复制部分字符函数——strncpy() 39214.8.3 更省事的复制函数——strdup() 39314.8.4 字符串复制函数——memcpy() 39414.8.5 带终止字符的复制函数——memccpy() 39514.8.6 字符串移动函数——memmove() 39514.9 字符和字符串的转换 39614.9.1 大小写字符的转换 39614.9.2 转换大小写字符串 39714.9.3 字符串与数值的转换 39814.10 其他字符串函数 39914.10.1 字符串反转函数——strrev() 39914.10.2 替换字符串中的字符函数——strset() 40014.10.3 分解字符串函数——strtok() 40114.10.4 字符串填充函数——memset() 40214.11 小结 403第15章 文件操作 404在 前面各章的实例程序中,每次执行程序时,需要用户从键盘上输入数据,并将程序运行结果输出到屏幕上。在实际的应用中,可能需要将计算机的处理结果打印输出 或保存到一个文件中,以供其他用户查看。当程序需要处理大量数据时,可能还需要从一个文件中读取这些数据。c语言提供了丰富的文件操作函数。本章将介绍操 作文件的常用函数。15.1 文件与数据流 40415.1.1 程序的输入/输出概念 40415.1.2 流的概念 40415.1.3 预定义的流 40515.1.4 文件的基本概念 40515.1.5 缓冲文件系统 40615.2 文件的打开与关闭 40615.2.1 文件指针 40615.2.2 打开文件函数——fopen() 40715.2.3 关闭文件函数——fclose() 40915.3 从文件中读写字符 40915.3.1 写字符函数——putc()和fputc() 41015.3.2 读字符函数——getc()和fgetc() 41115.3.3 合并文件 41315.4 从文件中读写字符串 41415.4.1 写字符串函数——fputs() 41415.4.2 读字符串函数——fgets() 41615.4.3 文件格式输出函数——fprintf() 41715.4.4 文件格式输入函数——fscanf() 41815.5 二进制文件的读写 42015.5.1 写入整型数据函数——putw() 42115.5.2 读取整型数据函数——getw() 42215.5.3 写数据块函数——fwrite() 42315.5.4 读数据块函数——fread() 42515.5.5 文件检测函数 42615.6 文件的随机读写 42715.6.1 获取当前位置函数——ftell() 42715.6.2 重置文件位置指针函数——rewind() 42915.6.3 设置文件位置指针——fseek()函数 43015.7 管理缓冲区 43215.8 输入/输出的重定向 43315.8.1 操作系统的重定向功能 43315.8.2 重定向输出 43415.8.3 重定向函数——freopen() 43515.9 文件管理 43615.9.1 重命名文件 43615.9.2 删除文件 43715.9.3 复制文件 43815.9.4 创建临时文件 43915.10 小结 441第16章 典型库函数应用 442前 面曾经介绍过c语言中的字符及字符串处理函数。在实际应用中,其实还有很多其他方面的应用。例如数学运算或绘图程序中需要用到大量的数学函数,而另一些程 序中可能需要处理日期和时间类的数据等。在c语言中,还提供了一些库函数用于数学和时间处理等。本章将介绍c语言程序设计中,这些典型的库函数应用。16.1 随机函数 44216.1.1 伪随机函数——rand() 44216.1.2 随机种子函数——srand() 44316.1.3 更加合理的随机数产生方法 44416.1.4 获取任意范围的随机数 44516.1.5 获取随机字符 44616.2 数学函数 44716.2.1 绝对值函数 44816.2.2 三角函数 44816.2.3 双曲三角函数 44916.2.4 指数函数和对数函数 45016.2.5 取整函数 45216.2.6 浮点型分离函数 45316.2.7 幂函数 45416.2.8 取余函数 45416.2.9 c99中扩展的数学函数 45516.3 日期时间函数 45516.3.1 表示日期时间的数据结构 45516.3.2 获取日期时间 45616.3.3 转换日期时间的表示形式 45716.3.4 格式化日期时间 46016.4 小结 463第17章 模块化程序设计方法 464c语言提供支持模块化软件开发的功能,如c语言的程序整体由一个或多个函数组成,每个函数都具有各自独立的功能。这些函数还可分布在不同的源文件中,在需要时包含到c主程序中即可。c语言还允许通过使用不同存储类别的变量,控制模块内部及外部的信息交换。本章首先简单介绍模块化设计的概念,接着介绍c程序模块的结构,最后详细介绍c语言中不同存储类别变量的使用。17.1 模块化程序设计概念 46417.2 程序模块结构 46517.2.1 c程序的组织 46517.2.2 多文件模块的编译链接 46717.2.3 文件包含 47017.2.4 内部函数与外部函数 47117.3 变量的作用域 47217.3.1 局部变量 47217.3.2 在复合语句中的变量 47317.3.3 全局变量 47417.3.4 全局变量和局部变量同名 47717.4 变量的存储类型 47717.4.1 了解存储类型 47817.4.2 自动变量 47817.4.3 寄存器变量 48017.4.4 外部变量 48117.4.5 静态变量 48217.5 函数、文件、变量的关系 48517.6 小结 486第18章 典型算法应用 487算法是对特定问题求解步骤的描述。对于同一个问题,可能用不同算法来求解,程序员可根据算法的可读性、效率等进行取舍。针对不同的数据保存方式,也会有不同的算法。本章将重点介绍c语言程序设计中的常用算法,也会穿插着简单介绍常用数据和数据结构的内容。18.1 排序 48718.1.1 排序概述 48718.1.2 冒泡排序法 48818.1.3 选择排序法 48918.1.4 插入排序法 49118.1.5 shell排序法 49218.1.6 快速排序法 49418.1.7 字符串数组的排序 49618.1.8 字符串的排序 49818.2 查找 49918.2.1 顺序查找 49918.2.2 折半查找 50118.3 队列 50318.3.1 队列的概念 50418.3.2 队列的操作 50418.4 堆栈 50818.4.1 堆栈的概念 50818.4.2 堆栈的实现 50818.5 链表 51218.5.1 链表的概念 51218.5.2 链表的基本操作 51318.5.3 测试链表的功能 51718.6 小结 518第19章 图形绘制 519到目前为止,本书所有的操作都是针对文本模式进行的。从本章开始将带领读者进入一个新的模式——图形模式,主要介绍图形显示的相关技术,包括各种图形的绘制及图形的编辑。本章介绍的是dos界面下的图形编译,将使用djgpp开发环境编写相关程序。19.1 显示系统简介 51919.1.1 显示系统基本概念 51919.1.2 显示卡种类 52019.1.3 显示模式 52019.2 djgpp开发环境 52219.2.1 下载djgpp开发环境 52219.2.2 安装djgpp开发环境 52319.2.3 测试djgpp开发环境 52419.2.4 调用中断服务 52519.3 绘图基础 52619.3.1 设置显示模式 52719.3.2 控制显示缓冲区 52719.4 图形函数 52819.4.1 绘制点 52819.4.2 读取点的信息 52919.4.3 绘制直线 53019.4.4 绘制矩形 53219.4.5 绘制圆 53219.4.6 绘制多边形 53419.5 编辑图形 53619.5.1 复制图形 53619.5.2 移动图形 53619.5.3 保存图形 53719.5.4 载入图形 53719.6 小结 539第20章 鼠标控制 540在前面的程序设计中,需要进行人机交互的时候都是采用键盘输入的。除键盘之外,鼠标是计算机中用得最多的输入设置。特别是windows操作系统的普及,使鼠标成为了计算机一个必备的输入设备。本章将介绍在c语言中控制鼠标的方法。20.1 鼠标驱动程序 54020.1.1 通过中断访问鼠标驱动程序 54020.1.2 djgpp开发环境对中断的支持 54120.2 鼠标库函数 54120.2.1 定义头文件mouse.h 54120.2.2 通过中断控制鼠标 54220.2.3 初始化鼠标 54320.2.4 复位鼠标 54420.2.5 移动鼠标 54420.2.6 显示鼠标指针 54520.2.7 隐藏鼠标指针 54520.2.8 获取按下的按键信息 54620.2.9 获取释放的按键信息 54620.2.10 获取鼠标状态信息 54720.2.11 获取鼠标指针位置信息 54820.2.12 保存鼠标指针位置 54820.2.13 捕获键盘或鼠标 54920.2.14 鼠标指针区域 55020.3 鼠标应用实例 55120.3.1 了解屏幕函数 55120.3.2 实例程序 55220.4 小结 554第3篇 c语言接口篇第21章 c语言与汇编的接口 556c语言的强大在于其和现代很多主流的编程语言都可以进行嵌套编程,各种编程语言都提供了和c语言的接口。从本章开始,将介绍目前主流的编程语言与c语言的接口方式及程序设计。21.1 at&t汇编简介 55621.1.1 了解汇编的两种格式 55621.1.2 将c语言输出为汇编程序 55821.2 gcc内嵌汇编 55921.2.1 基本内联汇编 55921.2.2 扩展内联汇编 55921.2.3 内联汇编实例 56321.3 调用汇编程序 56421.3.1 c编译程序的调用约定 56521.3.2 c语言调用汇编的结构 56621.3.3 建立汇编函数的框架 56721.3.4 调用汇编函数 56721.4 在visual c++中调用汇编 56921.4.1 内联汇编关键字 56921.4.2 在__asm块中使用汇编语言 57021.4.3 在__asm块中使用c/c++语言元素 57121.4.4 寄存器的使用 57221.4.5 跳转 57221.4.6 内联汇编调用函数实例 57321.4.7 内联汇编的优缺点 57421.5 小结 574第22章 c语言与labview的接口 575虚 拟仪器软件设计是目前比较流行的程序设计方法,其以图形化语言labview为主。通过labview可以方便、快捷地创建各种控制及数据采集系统。但在 遇到labview不易实现的功能时,可通过在labview中调用c实现。本章介绍在labview中调用c的方法和配置cin节点的原则,并通过例子 详细说明实现labview和c混合编程的过程。22.1 labview概述 57522.1.1 虚拟仪器概述 57522.1.2 虚拟仪器与传统仪器的对比 57622.1.3 虚拟仪器的优势 57722.1.4 什么是labview 57722.1.5 labview的运行机制 57822.2 cin节点 58022.2.1 cin概述 58022.2.2 支持在labview中调用的cin的编译器 58022.2.3 cin节点说明 58122.3 cin节点的设计方法 58222.3.1 创建cin节点的基本方法 58222.3.2 创建cin节点 58222.3.3 创建.c源文件 58322.3.4 编译.c文件 58522.3.5 加载.lsb文件 58722.4 cin节点的多线程运行 58722.5 小结 587第23章 c语言与matlab的接口 588matlab 作为世界顶尖的数学应用软件,以其强大的工程计算、算法研究、工程绘图、应用程序开发、数据分析和动态仿真等功能,在各个领域发挥着越来越重要的作用。虽 然matlab是一个完整的、功能齐全的编程环境,但在某些情况下,与外部环境的数据和程序的交互是非常必须而且有益的。而c语言是目前应用最广的编程语 言,其功能丰富,使用灵活方便,目标程序效率高,既有高级语言的优点,又有低级语言的特点。本章将介绍c语言与matlab的接口。23.1 matlab简介 58823.1.1 matlab简介 58823.1.2 matlab的版本演化 58923.1.3 matlab的优势 59123.1.4 matlab常用工具箱 59323.1.5 c语言与matlab的接口 59323.2 matlab引擎 59423.2.1 matlab引擎简介 59423.2.2 matlab引擎的工作方式 59523.2.3 配置visual c++编译器 59523.2.4 matlab引擎api详解 59623.2.5 数据类型mxarray的操作 59823.2.6 matlab引擎实例 60023.3 com组件 60323.3.1 使用deploytool 60323.3.2 使用comtool 60823.4 mex文件 61123.4.1 matlab编译器简介 61123.4.2 matlab编译器的安装与配置 61223.4.3 c语言的mex文件的结构 61423.4.4 c语言的mex文件实例 61523.4.5 mex文件的优势 61623.4.6 常用的mex函数和mx函数 61823.4.7 c-mex文件字符串操作实例 62023.5 使用matcom 62223.6 小结 622第24章 c语言与javascript的接口 623javascript(简 称js)在浏览器中的应用几乎是尽人皆知的。实际上,javascript技术也可以使用在非浏览器应用程序当中,从而让应用程序具有自动的脚本功能。本 章将介绍一种功能非常强大的javascript-c引擎,通过其可以使c程序能够解释执行javascript脚本。24.1 javascript简介 62324.1.1 什么是javascript 62324.1.2 javascript基本特点 62424.1.3 正确认识javascript 62424.1.4 javascript的基本概念 62424.1.5 javascript的运行环境 62724.2 javascript-c引擎 62724.2.1 javascript-c引擎的由来 62724.2.2 获取javascript-c引擎 62824.2.3 javascript-c引擎支持的版本 62824.2.4 运行javascript-c引擎的条件 62824.2.5 javascript-c引擎与应用程序的关系 62924.3 javascript-c引擎开发 63124.3.1 嵌入javascript-c引擎的必要条件 63124.3.2 管理一个运行时 63224.3.3 管理上下文 63324.3.4 初始化内置的和全局的javascript对象 63424.3.5 创建和初始化自定义对象 63424.3.6 javascript类型的处理 63524.4 在c/c++中执行javascript程序 63624.4.1 创建 javascript 运行时环境 63624.4.2 创建一个上下文 63724.4.3 初始化全局对象 63724.4.4 执行脚本 63724.4.5 清理脚本引擎 63824.5 javascript-c引擎的编译 63824.6 javascript-c引擎实例 63924.6.1 建立项目 63924.6.2 c源文件 64024.7 小结 642第25章 c语言硬件端口操作 643c 语言既有高级语言的特点,又有低级语言的特点,这主要体现在c语言可以对硬件端口进行操作。在turbo c中可以直接对并行接口进行操作,在其他开发环境中可以通过嵌入汇编语言或者使用相应的库文件实现并行接口操作。本章以计算机并行接口的操作为例,向读者 展示c语言的硬件端口操作能力。25.1 并行端口简介 64325.1.1 认识计算机并口 64325.1.2 并口的引脚定义 64325.1.3 并口的工作模式 64425.1.4 并口寄存器定义 64525.1.5 并口开发调试工具包 64625.2 turbo c下的并口操作 64725.2.1 端口操作函数 64825.2.2 并口读写实例 64825.3 其他c语言环境下的并口操作 64925.3.1 端口开发库函数 64925.3.2 并口读写实例 65125.4 小结 652第4篇 c语言扩展篇第26章 linux下的c语言开发 654linux 操作系统在服务器领域的应用和普及已经有较长的历史,这源于它的开源特点及其超越windows的安全性和稳定性。linux的大部分代码都是用c语言开 发的,在linux操作系统中进行程序开发时首选程序设计语言为c语言。本章将简单介绍linux,以及在linux中使用c语言编写程序的方法。26.1 linux简介 65426.2 linux常用命令详解 65526.2.1 文件管理 65626.2.2 文件传输 65926.2.3 文档编辑 66026.2.4 系统管理 66226.2.5 系统设置 66626.2.6 网络通信 66926.2.7 磁盘管理 67226.2.8 磁盘维护 67526.2.9 备份压缩 67726.2.10 设备管理 67826.3 linux c语言开发环境 67926.3.1 linux c开发环境的构成 67926.3.2 代码编辑器 68026.3.3 gcc编译器 68126.4 linux下的c程序开发 68226.4.1 在emacs中编译c程序 68226.4.2 在linux中编写c程序 68326.5 小结 685第27章 单片机的c语言开发 686c 语言是目前最为流行的编程语言,它的成功也延续到了其他领域。单片机便是一个重要的例子。在传统的单片机程序设计中,一般采用汇编语言实现。而后来,单片 机的开发全面借鉴了c语言,从而进入了c语言开发单片机的时代。本章将介绍单片机的c语言开发及其与标准c语言的一些区别。27.1 单片机简介 68627.1.1 单片机的发展 68627.1.2 51系列单片机 68727.1.3 认识单片机 68727.1.4 单片机的结构 68827.1.5 单片机的应用领域 69027.2 单片机c语言简介 69027.2.1 单片机c语言和汇编语言的对比 69127.2.2 单片机c语言的特点 69127.3 单片机c语言的开发工具 69127.3.1 keil μvision3简介 69127.3.2 keil μvision3的系统需求 69227.3.3 keil μvision3集成开发环境 69227.4 单片机c语言开发实例 69327.4.1 创建项目 69327.4.2 创建源文件 69427.4.3 编译项目 69527.4.4 仿真调试 69627.5 单片机c语言与标准c语言的区别 69627.5.1 标识符 69627.5.2 关键字 69727.5.3 数据类型 69727.5.4 中断函数 69727.5.5 存储类型 69827.5.6 扩展数据类型 70027.5.7 存储模式 70227.5.8 指针 70327.5.9 递归或可重入函数指定 70427.6 小结 705第28章 嵌入式系统c语言开发 706嵌 入式系统(embeded system)是目前最为流行的一门技术。嵌入式系统不仅和一般的pc机上的应用系统不同,就是针对不同的具体应用而设计的嵌入式系统之间差别也很大。这 就导致嵌入式系统的开发与pc机不同。目前使用最多的便是基于linux的嵌入式系统。本章将介绍嵌入式linux系统下的c语言开发工具和开发流程。28.1 嵌入式系统简介 70628.1.1 什么是嵌入式系统 70628.1.2 嵌入式系统的基本结构 70728.1.3 嵌入式系统的特点 70728.1.4 嵌入式系统中的处理器 70728.1.5 嵌入式操作系统 70828.1.6 嵌入式系统中的软件系统 70928.2 嵌入式linux c语言开发工具 71028.2.1 编辑器vim 71028.2.2 编译器gcc 71528.2.3 gcc的常用编译选项 71728.2.4 调试器gdb 72028.2.5 工程管理 make 72528.3 集成开发环境eclipse 73028.3.1 eclipse的安装 73028.3.2 eclipse的界面简介 73228.3.3 创建hello项目 73328.3.4 调试hello项目 73528.4 嵌入式c语言开发流程 73528.4.1 命令行下的开发流程 73528.4.2 基于eclipse的开发流程 73928.5 小结 743第29章 基于c语言的高性能并行gpu编程 744普 通的c语言程序运行在cpu上,都是顺序执行的语句。目前,并行计算是高性能计算的一个方面。如何将c语言的简单易学、功能强大的特点与并行计算结合起来 是一个研究方向。现在,普通用户可以通过显卡gpu运行c程序实现并行计算,提供程序的计算性能。本章将介绍如何使用c语言和nvidia的gpu进行并 行编程。29.1 gpu概述 74429.1.1 gpu和cpu 74429.1.2 gpu的作用 74429.1.3 gpu的优势 74529.1.4 gpu的供应商 74729.1.5 gpu的开发环境 74829.2 基于c语言的cuda 74829.2.1 什么是cuda 74829.2.2 cuda的发展历史 74929.2.3 cuda基本构架 75029.2.4 cuda编程模型 75229.2.5 cuda硬件实现 75329.3 cuda应用程序编程接口(api) 75429.3.1 cuda编程接口的构成 75429.3.2 cuda对c语言的扩展 75429.3.3 nvcc编译 75629.3.4 公共运行时(runtime)组件 75729.3.5 设备运行时组件 75829.3.6 主机运行时组件 76129.3.7 cuda运行时api详解 76229.3.8 cuda驱动程序api详解 77229.4 在visual studio中使用cuda 78429.4.1 安装cuda 78429.4.2 配置cuda nvcc 78629.4.3 使用第三方工具配置cuda nvcc 78929.5 cuda并行编程实例 79029.5.1 初始化cuda实例 79129.5.2 gpu运算实例 792 ...
-
分类:C/C++ 语言:简体中文 大小:未知 发布时间:13-05-12
第1篇 c语言基础.第1章 c语言概述 21.1 c语言发展历史 21.1.1 c语言发展过程 21.1.2 c语言标准 31.2 c语言的特点 41.2.1 简洁紧凑 41.2.2 灵活高效 41.2.3 强大的控制结构 51.2.4 可移植性 51.2.5 c语言的缺点 51.2.6 c与c++的关系 61.3 c语言程序开发过程 61.3.1 定义程序目标 61.3.2 设计程序 61.3.3 编写源代码 71.3.4 编译和链接 71.3.5 测试 81.3.6 维护和修改 81.3.7 总结 8.1.4 创建第一个c程序 91.4.1 c程序结构 91.4.2 输入程序代码 91.4.3 编译链接程序 101.4.4 调试程序 111.4.5 程序语句的含义 12第2章 c程序的组成 132.1 一个完整的c程序 132.1.1 分析程序目标 132.1.2 设计程序 132.1.3 编写代码 142.1.4 编译运行程序 152.2 c程序的组成 162.2.1 包含指令 162.2.2 定义常量 162.2.3 声明函数原型 172.2.4 main函数 172.2.5 程序语句 172.2.6 函数定义 182.2.7 注释 182.3 c程序组成总结 19第3章 c语言开发环境 203.1 c语言开发环境简介 203.1.1 c语言开发环境的组成 203.1.2 常用开发环境 203.2 使用dev-c++ 223.2.1 dev-c++操作界面 223.2.2 设置选项 223.2.3 用dev-c++创建c程序 233.2.4 编译程序 243.2.5 运行dev-c++编译的程序 253.3 使用visual c++ 263.3.1 visual c++操作界面 273.3.2 用visual c++创建c程序 273.3.3 编译程序 293.3.4 运行visual c++生成的程序 303.4 linux c语言开发环境 313.4.1 linux c语言开发环境的构成 313.4.2 代码编辑器 313.4.3 gcc编译器 333.4.4 在emacs中编译c程序 333.4.5 在linux中编写c程序 34第4章 数据的表示 374.1 数据的存储 374.1.1 内存单元 374.1.2 字符的存储 384.1.3 数值的存储 384.2 数据类型简介 394.3 常量 404.3.1 直接常量 404.3.2 符号常量 404.4 变量 424.4.1 标识符 424.4.2 声明变量 434.4.3 变量初始化 454.5 整数类型 454.5.1 整数类型及存储 454.5.2 整型常量的表示 484.5.3 整型数据输出 504.6 字符类型 534.6.1 字符常量 534.6.2 字符变量及初始化 534.6.3 转义字符 544.6.4 字符型数据的输出 554.7 实数类型 564.7.1 实数类型及存储 564.7.2 实型常量的表示 584.7.3 实型变量 594.7.4 实型数据输出 604.8 混合运算及类型转换 614.8.1 混合运算 614.8.2 强制数据类型转换 634.9 c99新增数据类型 644.9.1 逻辑型(_bool) 644.9.2 复数类型(_complex和_imaginary) 644.10 总结 65第5章 表达式、运算符和语句 665.1 表达式 665.1.1 简单表达式 665.1.2 逗号表达式 665.2 运算符 675.2.1 运算符概述 685.2.2 算术运算符 685.2.3 赋值运算符 735.2.4 关系运算符 755.2.5 逻辑运算符 765.2.6 位运算符 785.2.7 条件运算符 785.2.8 其他运算符 805.3 表达式的运算顺序 815.3.1 运算符优先级 815.3.2 运算符的结合性 825.3.3 自增自减运算符注意事项 835.4 语句 845.4.1 语句书写方式 845.4.2 表达式语句 855.4.3 空语句 865.4.4 复合语句 865.4.5 标号语句 87第6章 格式化输出/输入 886.1 格式化输出——printf函数 886.1.1 printf函数的格式 886.1.2 printf的格式字符 896.1.3 修饰符 916.1.4 printf函数实例 936.1.5 动态设置输出宽度和精度 986.1.6 printf函数的返回值 996.1.7 理解输出列表 996.2 格式化输入——scanf函数 1026.2.1 scanf函数的格式 1026.2.2 scanf函数格式字符串 1036.2.3 scanf函数注意问题 1056.2.4 scanf函数的返回值 1076.3 其他常用输入/输出函数 1076.3.1 getchar函数 1086.3.2 getch函数 1086.3.3 gets函数 1096.3.4 putch函数 1106.3.5 puts函数 110第7章 分支结构程序设计 1127.1 分支程序流程 1127.2 if语句 1137.2.1 基本if语句 1137.2.2 if else语句 1167.2.3 再论条件表达式 1177.3 嵌套if语句 1177.3.1 嵌套if语句的形式 1177.3.2 if语句嵌套实例 1187.4 if else if语句 1227.4.1 if else if语句格式 1227.4.2 if else if实例 1237.5 多路分支——switch 1237.5.1 switch语句格式 1237.5.2 switch实例 1257.5.3 使用多重标号 1267.5.4 switch和if比较 129第8章 循环结构程序设计 1308.1 循环结构的程序流程 1308.2 while循环 1318.2.1 while语句格式 1318.2.2 理解循环条件 1348.2.3 理解循环体 1358.2.4 while循环需注意的问题 1378.3 for循环 1378.3.1 for语句格式 1388.3.2 for语句的各种样式 1398.3.3 for语句实例 1428.4 do while语句 1448.4.1 while语句不足 1448.4.2 do while语句格式 1468.5 循环嵌套 1478.5.1 了解循环嵌套 1478.5.2 循环嵌套的结构 1498.5.3 循环嵌套实例 1508.6 break和continue语句 1548.6.1 break语句 1548.6.2 continue语句 1558.7 goto语句 157第9章 使用数组 1599.1 了解数组 1599.1.1 使用数组的好处 1599.1.2 数组的概念 1609.1.3 数组的维数 1619.2 一维数组 1629.2.1 一维数组的声明 1629.2.2 一维数组的存储 1649.2.3 引用一维数组 1659.2.4 一维数组的初始化 1679.3 二维数组 1689.3.1 二维数组的声明 1699.3.2 二维数组的存储 1699.3.3 二维数组的初始化 1739.4 字符数组和字符串 1749.4.1 字符数组 1749.4.2 了解字符串 1759.4.3 字符串的输入输出 1779.5 数组的实例 1789.5.1 字符串反转 1789.5.2 查找最大数 1799.5.3 数据排序 180第10章 使用函数 18310.1 函数的概念 18310.1.1 函数概念 18310.1.2 函数的分类 18410.1.3 定义函数 18510.1.4 main函数 18610.2 函数的工作过程 18710.2.1 程序结构 18710.2.2 函数执行过程 18710.3 编写函数 18810.3.1 函数头 18810.3.2 返回类型 18910.3.3 参数列表 18910.3.4 函数体 19010.3.5 函数原型 19010.4 函数的参数 19210.4.1 参数传递过程 19210.4.2 值调用 19210.4.3 引用调用 19410.4.4 数组调用 19610.4.5 main的参数 19810.5 函数调用 20010.5.1 函数调用方式 20110.5.2 被调函数的说明 20110.5.3 返回函数结果 20310.5.4 函数的嵌套调用 20410.6 递归函数 20510.6.1 函数的递归调用 20510.6.2 递归的基本原理 20710.6.3 递归函数设计 20810.6.4 递归的优缺点 210第11章 模块化程序设计方法 21111.1 模块化程序设计概念 21111.2 程序模块结构 21211.2.1 c程序的组织 21211.2.2 多文件模块的编译链接 21311.2.3 文件包含 21511.2.4 内部函数与外部函数 21611.3 变量的作用域 21711.3.1 局部变量 21711.3.2 在复合语句中的变量 21811.3.3 全局变量 21911.3.4 全局变量和局部变量同名 22211.4 变量的存储类型 22311.4.1 了解存储类型 22311.4.2 自动变量 22411.4.3 寄存器变量 22511.4.4 外部变量 22611.4.5 静态变量 22711.5 函数、文件、变量的关系 229第12章 使用指针 23012.1 内存和变量 23012.1.1 计算机内存 23012.1.2 变量的存储 23112.2 指针和简单变量 23212.2.1 指针的概念 23212.2.2 创建指针 23312.2.3 初始化指针 23412.2.4 使用指针 23512.2.5 给函数传递指针 23812.3 指针和数组 23912.3.1 指针、数组和地址间的关系 23912.3.2 指针运算 24112.3.3 用指针操作数组元素 24212.4 指向多维数组的指针 24512.4.1 理解二维数组的地址 24512.4.2 多维数组的指针表示 24712.4.3 指向多维数组的指针变量 24812.4.4 数组名作为函数的参数 25212.4.5 指向数组的指针小结 25512.5 指针和字符串 25612.5.1 字符串的指针表示 25612.5.2 字符串指针作函数参数 25812.5.3 字符数组和字符指针的区别 25912.6 指针数组 26012.6.1 指针数组的概念 26112.6.2 用指针数组处理字符串 26312.6.3 指针数组作函数参数 26412.7 指向指针的指针 26612.7.1 理解指向指针的指针 26612.7.2 二级指针变量与数组 26812.8 指针和函数 27212.8.1 返回指针的函数 27212.8.2 指向函数的指针 27412.9 指针和const 27612.9.1 用const控制指针 27712.9.2 const的几种特殊用法 27712.10 指针总结 27812.10.1 明确分辨各种指针类型 27812.10.2 理解指针的4项内容 279第13章 结构、联合和枚举 28013.1 结构的概念 28013.1.1 定义结构类型 28013.1.2 定义结构变量 28113.1.3 使用结构变量 28213.2 结构的嵌套 28413.2.1 包含数组的结构 28413.2.2 包含指针的结构 28513.2.3 包含结构的结构 28513.3 初始化结构变量 28813.4 结构数组 28913.4.1 结构数组的定义和引用 29013.4.2 结构数组的初始化 29113.4.3 结构数组实例 29113.5 结构指针 29213.5.1 定义结构指针 29213.5.2 使用结构指针 29313.5.3 用指针处理结构数组 29413.6 向函数传递结构 29513.6.1 传递结构变量的值 29513.6.2 传递结构指针到函数 29613.7 联合 29713.7.1 定义联合类型 29713.7.2 使用联合变量 29813.7.3 在结构中嵌套联合类型 29813.8 枚举 30013.8.1 定义枚举类型 30013.8.2 使用枚举变量 30113.9 使用typedef 301第14章 位运算和位域 30314.1 了解二进制数 30314.1.1 数据的存储 30314.1.2 整数的二进制表示 30414.1.3 实数的二进制表示 30514.1.4 使用其他进制 30514.2 位运算 30714.2.1 位逻辑运算符 30714.2.2 移位运算符 30914.2.3 位运算的复合赋值运算符 31014.2.4 位运算的用途 31014.3 位域 31114.3.1 定义位域结构 31114.3.2 位域的使用 31214.3.3 位域与联合的使用 314第15章 文件输入/输出 31615.1 文件与数据流 31615.1.1 程序的输入/输出概念 31615.1.2 流的概念 31615.1.3 预定义的流 31715.1.4 文件的基本概念 31715.1.5 缓冲文件系统 31815.2 文件的打开与关闭 31815.2.1 文件指针 31915.2.2 打开文件函数——fopen 31915.2.3 关闭文件函数——fclose 32115.3 从文件中读写字符 32215.3.1 写字符函数——putc和fputc 32215.3.2 读字符函数——getc和fgetc 32315.3.3 合并文件 32515.4 从文件中读写字符串 32615.4.1 写字符串函数——fputs 32615.4.2 读字符串函数——fgets 32715.4.3 文件格式输出函数——fprintf 32815.4.4 文件格式输入函数——fscanf 33015.5 二进制文件的读写 33215.5.1 写入整型数据函数——putw 33215.5.2 读取整型数据函数——getw 33315.5.3 写数据块函数——fwrite 33315.5.4 读数据块函数——fread 33515.5.5 文件检测函数 33715.6 文件的随机读写 33715.6.1 获取当前位置函数——ftell 33715.6.2 重置文件位置指针函数——rewind 33915.6.3 设置文件位置指针——fseek函数 34015.7 管理缓冲区 34215.8 输入/输出的重定向 34315.8.1 操作系统的重定向功能 34415.8.2 重定向输出 34415.8.3 重定向函数——freopen 34515.9 文件管理 34615.9.1 重命名文件 34615.9.2 删除文件 34715.9.3 复制文件 34815.9.4 创建临时文件 349第16章 预处理 35116.1 预处理简介 35116.1.1 预处理功能 35116.1.2 预处理命令 35116.2 宏定义命令——#define 35216.2.1 无参数的宏 35216.2.2 带参数的宏 35416.2.3 预处理操作符#和## 35516.3 条件编译 35716.3.1 使用#if 35716.3.2 使用#ifdef和#ifndef 35916.3.3 使用#defined和#undef 36016.4 其他预处理命令.. 36116.4.1 预定义的宏名 36116.4.2 重置行号和文件名命令——#line 36116.4.3 修改编译器设置命令——#pragma 36216.4.4 产生错误信息命令——#error 36216.5 内联函数 362第2篇 c语言高级程序设计第17章 处理字符串 36517.1 字符串的存储 36517.1.1 字符串的静态存储 36517.1.2 字符串的动态存储 36617.2 字符和字符串检测函数 36817.2.1 字符检测函数简介 36817.2.2 检测字符串长度函数——strlen 36917.3 查找字符串 37017.3.1 查找字符位置——strchr 37017.3.2 查找相同字符——strspn 37217.3.3 查找包含字符位置——strcspn 37217.3.4 查找包含字符——strpbrk 37317.3.5 查找子串——strstr 37517.4 比较字符串 37617.4.1 比较字符串——strcmp 37617.4.2 比较部分字符串——memcmp 37717.4.3 比较时忽略大小写——stricmp 37917.5 连接字符串 38017.5.1 连接字符串——strcat 38017.5.2 连接部分字符——strncat 38217.6 复制字符串 38317.6.1 复制字符串——strcpy 38317.6.2 复制部分字符——strncpy 38417.6.3 更省事的复制函数——strdup 38517.7 字符和字符串的转换 38617.7.1 大小写字符的转换 38617.7.2 转换大小写字符串 38717.7.3 字符串与数值的转换 38817.8 其他字符串函数 38917.8.1 字符串反转——strrev 38917.8.2 替换字符串中的字符——strset 39017.8.3 分解字符串——strtok 391第18章 数学函数和时间函数 39318.1 数学函数 39318.1.1 三角函数 39318.1.2 双曲三角函数 39418.1.3 指数函数和对数函数 39518.1.4 其他数学函数 39818.2 日期时间函数 39918.2.1 表示日期时间的数据结构 39918.2.2 获取日期时间 40018.2.3 转换日期时间的表示形式 40118.2.4 格式化日期时间 404第19章 常用算法应用 40819.1 排序 40819.1.1 排序概述 40819.1.2 冒泡排序法 40919.1.3 选择排序法 41019.1.4 插入排序法 41119.1.5 shell排序法 41219.1.6 快速排序法 41319.1.7 字符串的排序 41419.2 查找 41619.2.1 顺序查找 41619.2.2 折半查找 41719.3 队列 41819.3.1 队列的概念 41819.3.2 队列的操作 41919.4 堆栈 42219.4.1 堆栈的概念 42219.4.2 堆栈的实现 42219.5 链表 42419.5.1 链表的概念 42419.5.2 链表的基本操作 42519.5.3 测试链表的功能 430第20章 存储管理 43220.1 内存组织方式 43220.1.1 内存组织方式 43220.1.2 堆和栈的比较 43320.2 c语言的动态存储管理 43420.2.1 分配内存函数——malloc 43420.2.2 另一个分配内存的函数——calloc 43620.2.3 调整已分配内存——realloc 43720.2.4 释放分配的内存——free 43920.2.5 丢失的内存 440第21章 控制鼠标 44221.1 鼠标驱动程序 44221.1.1 通过中断访问鼠标驱动程序 44221.1.2 新的开发环境 44321.1.3 调用中断服务 44421.2 鼠标库函数 44521.2.1 定义头文件mouse.h 44521.2.2 通过中断控制鼠标 44621.2.3 初始化鼠标 44721.2.4 复位鼠标 44721.2.5 移动鼠标 44821.2.6 显示鼠标指针 44821.2.7 隐藏鼠标指针 44921.2.8 获取按下按钮信息 44921.2.9 获取释放按钮信息 45021.2.10 获取鼠标状态信息 45121.2.11 获取鼠标指针位置信息 45121.2.12 保存鼠标指针位置 45221.2.13 捕获键盘或鼠标 45221.2.14 鼠标指针区域 45321.3 鼠标应用实例 45421.3.1 了解屏幕函数 45421.3.2 实例程序 455第22章 数据加密 45822.1 密码技术的概念 45822.2 加密方法 45822.2.1 换位加密法 45922.2.2 替换加密法 46222.2.3 位加密法 46422.3 md5加密简介 46622.3.1 md5简介 46622.3.2 md5算法描述 467第23章 数据压缩 46923.1 数据压缩基础 46923.1.1 数据压缩概述 46923.1.2 数据压缩相关概念 46923.1.3 常见压缩算法简介 47023.2 lzw原理 47123.2.1 lzw的相关概念 47123.2.2 lzw压缩过程 47123.2.3 lzw解压缩过程 47323.3 lzw实现代码 47323.3.1 程序构思 47323.3.2 定义数据结构 47423.3.3 压缩函数 47423.3.4 搜索哈希表 47623.3.5 输出压缩数据 47723.3.6 解压缩函数 47823.3.7 输入编码数据 48023.3.8 解码函数 48023.3.9 主程序 481第24章 图形编程 48324.1 显示系统简介 48324.1.1 显示系统基本概念 48324.1.2 显示卡种类 48424.1.3 显示模式 48424.2 绘图基础 48624.2.1 设置显示模式 48624.2.2 控制显示缓冲区 48724.3 图形函数 48824.3.1 绘制点 48824.3.2 读取点的信息 48924.3.3 绘制直线 48924.3.4 绘制矩形 49124.3.5 绘制圆 49224.3.6 绘制多边形 49324.4 编辑图形 49424.4.1 复制图形 49424.4.2 移动图形 49524.4.3 保存图形 49524.4.4 载入图形 496第25章 调用汇编程序 49825.1 at&t汇编简介 49825.1.1 了解汇编的两种格式 49825.1.2 将c语言输出为汇编程序 50025.2 gcc内嵌汇编 50125.2.1 基本内联汇编 50125.2.2 扩展内联汇编 50125.2.3 内联汇编实例 50525.3 调用汇编程序 50725.3.1 c编译程序的调用约定 50725.3.2 c语言调用汇编的结构 50825.3.3 建立汇编函数的框架 50925.3.4 调用汇编函数 510第26章 程序设计实例 51226.1 程序分析 51226.1.1 模块划分 51226.1.2 设计数据结构 51326.2 头文件 51426.3 主模块 51526.3.1 main函数 51526.3.2 检查初始化状态 51626.3.3 检查登录密码 51726.3.4 从文件创建链表 51826.3.5 显示主菜单 51926.3.6 将链表保存到文件 52226.4 输入员工信息 52326.5 查询员工信息 52526.5.1 查询子菜单 52526.5.2 查询函数 52726.5.3 通用显示函数 52826.6 显示员工信息 52926.7 修改员工信息 53026.7.1 修改子菜单 53026.7.2 修改数据 53226.8 删除员工信息 53326.9 统计员工信息 53526.10 重设系统密码 535附录a ascii关键字 537附录b ansi c关键字 540实例目录【程序1-1】第一个c语言程序 9【程序2-1】c语言程序组成示例 14【程序3-1】欢迎程序 25【程序4-1】符号常量示例 40【程序4-2】摄氏温度转换为华氏温度 44【程序4-3】整型数据所占内存空间的大小 46【程序4-4】整型数据输出示例 51【程序4-5】整数转换为十六进制和八进制示例 52【程序4-6】使用转义字符示例 55【程序4-7】字符型数据输出示例 56【程序4-8】实数类型占用的字节示例 57【程序4-9】实型数据输出示例1 59【程序4-10】实型数据输出示例2 60【程序4-11】实型数据输出示例3 61【程序4-12】char类型和int类型之间的转换示例 62【程序4-13】将float转换为int类型示例 62【程序4-14】强制类型转换示例 63【程序4-15】复数操作示例 64【程序5-1】输出逗号表达式的结果 67【程序5-2】十进制数转换为二进制数示例(不使用循环) 69【程序5-3】十进制数转换为二进制数示例(使用循环) 70【程序5-4】自增运算符的后缀模式和前缀模式 71【程序5-5】使用复合赋值运算符 75【程序5-6】关系运算符示例 76【程序5-7】逻辑运算符示例 77【程序5-8】条件运算符示例 79【程序5-9】使用sizeof运算符 80【程序6-1】printf函数示例 89【程序6-2】printf函数不同格式串输出示例 90【程序6-3】printf函数输出最小宽度控制示例 91【程序6-4】printf函数输出精度控制示例 92【程序6-5】printf函数输出字符示例 94【程序6-6】printf函数输出整数示例 95【程序6-7】printf函数输出实数示例 96【程序6-8】printf函数输出字符串示例 97【程序6-9】printf函数动态设置输出宽度和精度示例 98【程序6-10】printf函数的返回值示例 99【程序6-11】printf函数输出列表示例1 100【程序6-12】printf函数输出列表示例2 100【程序6-13】scanf函数示例 102【程序6-14】scanf函数不能控制输入精度示例 105【程序6-15】scanf函数使用非格式字符示例 106【程序6-16】scanf函数返回值示例 107【程序6-17】getchar函数示例 108【程序6-18】getch函数示例 109【程序6-19】gets函数示例 109【程序6-20】putch函数示例 110【程序6-21】puts函数示例 111【程序7-1】用if语句求最大数 114【程序7-2】用if语句对两个数排序 115【程序7-3】用if else语句对两个数排序 116【程序7-4】检查输入字符类型示例(if语句嵌套) 119【程序7-5】三个数排序示例(if语句嵌套方法) 120【程序7-6】三个数排序示例(交换方法) 121【程序7-7】检查输入字符类型示例(if else if语句) 123【程序7-8】整数转换为中文星期名称(switch语句) 125【程序7-9】switch语句多重标号示例(错误结果) 126【程序7-10】分档计算运费(switch语句) 127【程序8-1】求连续自然数之和示例(while语句,计数器递增) 132【程序8-2】求连续自然数之和示例(while语句,计数器递减) 134【程序8-3】求连续自然数之和示例(优化后的代码) 135【程序8-4】求连续自然数之和示例(for语句) 139【程序8-5】省略初始化部分的for循环示例 139【程序8-6】改变for循环的循环变量递增方式示例 141【程序8-7】用for循环输出指定期间的字符示例 142【程序8-8】用for循环输出ascii代码表示例 143【程序8-9】用while循环显示菜单示例 144【程序8-10】用do while循环显示菜单示例 146【程序8-11】循环嵌套输出示例 148【程序8-12】九九乘法表 150【程序8-13】九九乘法表示例(优化后的代码) 151【程序8-14】百钱买百鸡示例(循环嵌套) 152【程序8-15】百钱买百鸡代码优化示例 153【程序8-16】用break语句跳出循环示例 155【程序8-17】用continue语句跳过循环部分语句示例 156【程序8-18】用goto语句编写循环代码示例 157【程序9-1】统计学生成绩示例(不使用数组) 159【程序9-2】统计学生成绩示例(使用数组) 160【程序9-3】使用变长数组示例(c99标准) 163【程序9-4】越界访问数组示例 166【程序9-5】输出未初始化的数组元素示例 167【程序9-6】按线性方式输出二维数组元素示例 170【程序9-7】输出数组各元素的内存地址示例 171【程序9-8】字符数组示例 175【程序9-9】输出字符数组示例 177【程序9-10】字符串反转示例 179【程序9-11】输出数组中的最大数示例 180【程序9-12】数组元素排序示例 181【程序10-1】求最大值函数示例 185【程序10-2】函数返回值示例 189【程序10-3】函数返回值示例 191【程序10-4】函数的值调用示例 193【程序10-5】函数的引用调用示例 194【程序10-6】通过指针传递参数示例 195【程序10-7】函数的数组调用示例 197【程序10-8】main函数的参数示例 199【程序10-9】输出用户输入的命令行参数示例 200【程序10-10】函数嵌套调用示例 204【程序10-11】函数递归调用示例 205【程序10-12】汉诺塔(递归程序示例) 208【程序11-1】引用多个源程序文件示例 213【程序11-2】局部变量示例 217【程序11-3】复合语句中的变量示例 219【程序11-4】全局变量示例1 220【程序11-5】全局变量示例2 221【程序11-6】同名全局变量和局部变量示例 222【程序11-7】自动变量示例 224【程序11-8】寄存器变量示例 226【程序11-9】外部变量示例 226【程序11-10】静态变量示例 228【程序12-1】查看变量地址示例 232【程序12-2】错误初始化指针示例 235【程序12-3】取地址运算符和取内容运算符示例 236【程序12-4】用指针引用变量示例 237【程序12-5】通过指针交换数据示例 237【程序12-6】指针和数组地址之间的关系示例 240【程序12-7】用指针操作数组元素示例 242【程序12-8】将指针作为数组名使用示例 243【程序12-9】输出数组的地址和长度示例 245【程序12-10】输出数组各维的地址和长度示例 246【程序12-11】输出数组各元素的地址和长度示例 247【程序12-12】初始化二维数组示例 248【程序12-13】用指针变量初始化二维数组示例 249【程序12-14】用指针变量指向数组的一行数据示例 251【程序12-15】一维数组作函数参数示例 253【程序12-16】使用指向一维数组的指针变量传递参数示例 254【程序12-17】字符串数组、字符串指针使用示例 257【程序12-18】字符串指针作函数参数示例 258【程序12-19】用指针数组指向二维数组每一行示例 261【程序12-20】二维数组指针示例 262【程序12-21】用指针数组处理字符串示例 263【程序12-22】指针数组作函数参数示例 264【程序12-23】指向指针的指针示例 267【程序12-24】用二级指针操作一维数组示例 268【程序12-25】用二级指针操作二维数组示例 270【程序12-26】用二级指针作函数参数示例 271【程序12-27】指针型函数示例 272【程序12-28】指向函数的指针示例1 274【程序12-29】指向函数的指针示例2 275【程序12-30】指针和const的关系示例 278【程序13-1】结构和结构变量示例 283【程序13-2】嵌套结构成员赋值、输出示例 286【程序13-3】初始化结构示例 289【程序13-4】结构数组示例 291【程序13-5】用指针处理结构数组示例 294【程序13-6】传递结构变量的值到函数示例 295【程序13-7】结构中嵌套联合类型示例1 298【程序13-8】结构中嵌套联合类型示例2 299【程序14-1】位或运算示例 308【程序14-2】位反运算示例 308【程序14-3】位运算用途示例 310【程序14-4】位域示例 313【程序14-5】二进制转换(位域与联合的使用)示例 314【程序15-1】保存用户输入内容示例 322【程序15-2】从文件中读取字符示例 324【程序15-3】合并文件示例 325【程序15-4】向文件中增加内容示例 326【程序15-5】将文件内容显示到屏幕示例 328【程序15-6】格式化文件数据示例 329【程序15-7】读取格式化文件数据示例 330【程序15-8】将整型数据写入文件示例 332【程序15-9】从文件中读取整型数据示例 333【程序15-10】保存二进制文件示例 334【程序15-11】读二进制文件示例 336【程序15-12】获取文件位置指针示例 338【程序15-13】重置文件位置指针示例 339【程序15-14】设置文件位置指针示例 341【程序15-15】刷新标准输入流stdin缓冲区示例 343【程序15-16】重定向输出到显示器示例 344【程序15-17】重定向输出到文件示例 345【程序15-18】重命名文件示例 346【程序15-19】删除文件示例 347【程序15-20】复制文件示例 348【程序15-21】临时文件使用示例 349【程序16-1】无参数宏示例 353【程序16-2】操作符#示例 355【程序16-3】操作符##示例 356【程序16-4】条件编译示例 358【程序16-5】条件编译嵌套示例 359【程序16-6】使用预定宏名示例 361【程序16-7】#line命令示例 361【程序16-8】内联函数示例 363【程序17-1】字符串动态存储示例 367【程序17-2】字符检测函数示例 368【程序17-3】字符串长度函数示例 369【程序17-4】查找字符位置示例 370【程序17-5】查找相同字符示例 372【程序17-6】查找包含字符位置示例 373【程序17-7】查找包含字符示例 374【程序17-8】查找子串示例 375【程序17-9】比较字符串示例 376【程序17-10】比较部分字符串示例 378【程序17-11】忽略大小写比较字符串示例 379【程序17-12】连接字符串示例 381【程序17-13】连接部分字符示例 382【程序17-14】复制字符串示例 383【程序17-15】复制部分字符示例 384【程序17-16】用dup函数复制字符串示例 385【程序17-17】大小写字符转换示例 386【程序17-18】字符串大小写转换示例 387【程序17-19】字符串与数值转换示例 388【程序17-20】字符串反转示例 389【程序17-21】替换字符示例 390【程序17-22】分解字符串示例 391【程序18-1】三角函数sin示例 394【程序18-2】双三曲函数示例 395【程序18-3】exp函数示例 396【程序18-4】用frexp函数分解尾数和指数示例 396【程序18-5】用ldexp函数组合实数示例 397【程序18-6】ceil和floor函数示例 398【程序18-7】modf函数示例 399【程序18-8】获取日期时间示例 400【程序18-9】转换日期时间表示形式示例 401【程序18-10】秒数转换为对应的日期示例 402【程序18-11】日期转换为秒数示例 403【程序18-12】日期转换为字符串示例 404【程序18-13】显示当前日期示例 407【程序19-1】冒泡排序法示例 409【程序19-2】选择排序法示例 411【程序19-3】插入排序法示例 411【程序19-4】shell排序法示例 412【程序19-5】快速排序法示例 413【程序19-6】字符串排序示例 414【程序19-7】顺序查找示例 416【程序19-8】折半查找示例 418【程序19-9】队列操作示例 419【程序19-10】堆栈操作示例 423【程序19-11】链表操作示例 425【程序20-1】不同类变量分配内存空间示例 433【程序20-2】用malloc函数动态分配内存创建动态数组示例 435【程序20-3】用realloc函数动态分配内存示例 437【程序20-4】用free函数释放分配内存示例 439【程序20-5】内存分配丢失示例 440【程序20-6】分配所有可用内存示例 441【程序21-1】头文件,包含控制鼠标的函数原型定义 445【程序21-2】控制鼠标的函数代码 446【程序21-3】初始化鼠标函数代码 447【程序21-4】复位鼠标函数代码 447【程序21-5】移动鼠标函数代码 448【程序21-6】显示鼠标指针函数代码 448【程序21-7】隐藏鼠标指针函数代码 449【程序21-8】获取按下按钮信息函数代码 450【程序21-9】获取释放按钮信息函数代码 450【程序21-10】获取鼠标状态信息函数代码 451【程序21-11】获取鼠标指针位置信息函数代码 451【程序21-12】保存鼠标指针位置函数代码 452【程序21-13】捕获鼠标或键盘按钮函数代码 453【程序21-14】判断鼠标指针区域代码 454【程序21-15】测试鼠标库函数的代码 455【程序22-1】换位加密法示例 459【程序22-2】替换加密法示例 463【程序22-3】位加密法示例 465【程序23-1】lzw压缩算法头文件 474【程序23-2】压缩函数代码 475【程序23-3】搜索哈希表函数代码 477【程序23-4】输出压缩数据函数代码 477【程序23-5】解压缩函数代码 478【程序23-6】输入编辑数据函数代码 480【程序23-7】解压函数代码 480【程序23-8】压缩主程序代码 481【程序24-1】设置显示模式函数代码 486【程序24-2】绘制点的函数代码(调用bios功能) 488【程序24-3】绘制点的函数代码(直接存取显示内存) 489【程序24-4】读取点信息的函数代码 489【程序24-5】绘制直线的函数代码 490【程序24-6】绘制矩形的函数代码 491【程序24-7】绘制实心矩形的函数代码 491【程序24-8】绘制圆的函数代码 492【程序24-9】绘制实心圆的函数代码 493【程序24-10】绘制多边形的函数代码 493【程序24-11】绘制随机多边形的代码 494【程序24-12】复制图形的函数代码 494【程序24-13】移动图形的函数代码 495【程序24-14】保存图形的函数代码 495【程序24-15】载入图形的函数代码 496【程序24-16】测试绘制函数的代码 497【程序25-1】将c语言编译为汇编程序示例(c源程序) 500【程序25-2】将c语言编译为汇编程序示例(汇编程序) 500【程序25-3】简单内联汇编示例 503【程序25-4】包含输入部分的内联汇编示例 504【程序25-5】输出字符串的内联汇编示例 505【程序25-6】读取寄存器值的内联汇编示例 506【程序25-7】c语言函数调用约定示例 507【程序25-8】add函数(c源程序) 508【程序25-9】add函数编译后的汇编程序 508【程序25-10】两数相乘的汇编程序示例 509【程序25-11】c语言调用汇编程序示例... 510 电子书www.minxue.net下 载地址链接 ...
-
分类:C/C++ 语言:简体中文 大小:未知 发布时间:13-05-12
第1章 程序设计与C语言概述第2章 数据及数据类型第3章 运算符、表达式和语句第4章 流程控制第5章 函数第6章 数组与字符串第7章 指针第8章 预处理第9章 结构体与共用体第10章 文件第11章 动态数据结构附录Ⅰ C语言运算符及其优先级汇总表附录Ⅱ 标准ASCII码字符集参考文献…… ...
-
分类:建筑工程 语言:简体中文 大小:未知 发布时间:13-05-12
第1章 概述—建筑设计中的结构第1节 总论第2节 建筑设计的过程第3节 结构教育的总本方法第4节 结构和其他分体系第5节 小结第2章 把方案阶段的建筑形式看作总结构体系第1节 整体的假定第2节 估算建筑形式上的总作用力第3节 高宽比与抗倾覆第4节 建筑物的承载力和钢度第5节 建筑形式中的对称与排对称第3章 整体性及主要分析体系的相互关系第1节 建筑形式中结构作用的层次第2节 把建筑形式设想为实体结构第3节 把建筑形式看作空间结构第4节 柱式和框架式空间结构第4章 房屋结构总体系的方案分析第1节 把空间组成的部件作为主要结构分体系第2节 总体系分析的整体与局部问题第3节 单层开敞空间建筑例4-1第4节 两层停车库例4-2第5节 12层办公楼例4-3第6节 15层公寓的巨型结构例4-4第5章 结构荷载与结构反应第1节 概述第2节 恒载第3节 活荷载第4节 风荷载第5节 地震作用第6节 结构内部和外部的伸缩变形第7节 结构反应第8节 建筑规范、结构性能和承载力第6章 水平分体系的整体设计第1节 概述第2节 水平分体系的整体结构性能第3节 平板体系例6-1:预应力混凝土平板第4节 板-梁体系例6-2A例6-2B第5节 主-次梁体系例6-3第6节 双向密肋体系例6-4:双向密肋体系第7节 空间桁架体系例6-5:空间钢桁架体系第7章 竖向分体系第1节 概述第2节 墙体系例7-1:剪力墙设计例7-2:桁架式剪力墙设计第3节 井筒例7-3:筒结构分体系设计第4节 竖向荷载作用下的框架结构分体系第5节 水平荷载作用下的框架结构分析系例7-4:框架分析第6节 竖向构件的近似侧向变形例7-5:侧向变形第8章 直线型水平构件第1节 构件的截面形状与大小第2节 弯矩图第3节 内力抵抗矩第4节 容许应力和极限应力设计第5节 挠度第6节 预加应力与荷载平衡的预应力混凝土设计例8-1例8-2例8-3……第9章 直线型竖向构件第10章 高层建筑第11章 拱、悬索和薄壳结构体系第12章 基础第13章 施工第14章 房屋结构的造价参考文献(精选部分)附录计量单位换算系数表 本书为结构工程师和建筑提供了深厚而又具独特见解的基础知识和工程实例。书中阐述了结构设计方案中的基本力学概念,特别介绍了用整体概念来规划设计结构总体方案的方法;介绍了结构总体系和各分体系之间的力学关系,以及简化近似的分析计算方法。本书构思新颖,叙述深入浅出。对建筑师和结构工程师了解建筑空间形式和结构性能之间的相互关系,进而在设计创造性地相互配合,提高设计方案的快速比较和选择的能力都大有裨益。本书可供建筑、结构设计人员及大专院校建筑学及结构专业学习参考。作者简介作 者:(美)林同炎,(美)斯多台斯伯利 著,高立人 等译出 版 社:中国建筑工业出版社I S B N:9787112038107 ...