ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:721.37KB ,
资源ID:27488419      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27488419.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(廉旭讲课C语言.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

廉旭讲课C语言.docx

1、廉旭讲课C语言提前说明:1、感谢李老师,感谢大家给我这个机会。2、本节所有程序在vs2010下C#语言测试通过。3、我用C的原因只是因为它是强类型语言,更容易找错。其实,很多时候basic会更好用。4、为了尽量排除界面的影响,所以所有程序都在控制台测试。5、关于输出:basic下用print,c语言用printf。由于今天在vs2010下,所以输出全部用Console.Write();和Console.WriteLine();如果您用winform调试完全可以使用textbox或者label代替。6、本节用的很多东西尤其是类似于概念性的东西都是源于XX。7、本次课如有错误和不妥之处,请多多指教

2、,谢谢!1、运算符与优先级C运算符Basic运算符名称结合方向说明().-().数组下标,圆括号,对象,指针1- (类型) + - * & ! sizeof-Not负号强制类型转换自增自减取值取地址逻辑非按位取反长度运算符右到左2 除(类型)和sizeof操作外均是单目运算符单目运算/*%/*mod除乘取余数3 算术+ -+-加减左移右移4 移位=关系运算符5 关系=!=关系运算符& &(字符串连接连接)按位与6 位逻辑(乘方)按位异或|按位或&And逻辑与7 逻辑|Or逻辑或?:条件运算符右到左8 三目= /= *=%= +=-= = &= = |=赋值与复合赋值运算符(算术,移位,按位操作

3、的)右到左9 赋值,逗号运算符10左到右顺序运算Like字符串匹配Is对象引用比较2、常用基本变量类型Basic关键字C关键字含义取值范围IntegerInt整形16位-3276832767(现在已经32位)Singlefloat浮点,单精度取值范围根据编译器和操作系统、开发环境的不同会有变化doubledouble双精度stringChar*(c#为string)字符,字符串booleanC没有bool (c# Bool)逻辑型ByteUnsigned char (c#有byte)字节型随着技术的发展,数据类型已经无法计算,任何人都可以在自己的程序中定义和使用自己的类型。我个人觉得程序就是用

4、计算机能识别的方式描述人的思维过程。所以所谓的写程序就是把咱们的想法,用电脑描述出来。3、计算素数、何为素数:质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数(不包括0)整除的数。、判断一个数是不是素数的计算过程:用这个数(n)分别除以2,3,4,n-1(这里不能是n,不然就不对了),如果全都不能整除,那么这个数就是素数。换句话说,如果碰到一个能整除的,那么这个数就不是素数。编程语言描述上面一句话大概就是:If(n%(2,3,4,n-1)有一个=0),则n不是素数。括号中的n必须用个变量来代替,那么就变成了一个循环。如果数字有很多呢?我们就把前面那个放到一个循环中

5、。并且还要想办法把数据记录下来,用来显示。具体程序如下:所有程序的主函数调用都与如下代码类似:运行结果如下:大家如果上网查资料,第二个for循环的条件多半是jC。但是现在不是一个是如果是两个那么就是:A-B,A-C,B-C;如果是三个盘子呢,应该就是A-C,A-B,C-B,A-C,B-A,B-C,A-C,然后我们再从中找出规律这样做就是麻烦的方法了。我们可以用把大象装冰箱里的方法去解决。现在我们把所有的盘子看成两部分,一部分是最下面一个盘子,第二部分是除了最下面的那个的所有盘子,于是我们只需要把上面的那个整体移动到B(即A-B),然后我们把最下面的盘子移动到C(即A-C),最后把那个整体移动到

6、C(即B-C)。您会问,那个B不是个整体吗?怎么移动啊?继续让它执行刚才的过程呗。、程序代码如下:运行结果如下:这个问题最不好理解的地方就是:把n-1当做一个整体去处理。注意,实际使用中,递归的长处是可读性高,程序好理解,但是没有循环语句效率高。具体使用中到底用哪个要看问题是什么。像计算阶乘就没有必要用递归。但是像汉诺塔问题,如果不用递归就会很复杂了。7、数组、所谓数组,就是相同数据类型的元素按一定顺序排列的集合。(来源于XX百科)数组里面的数据类型可不一定是基本类型。C和basic数组的几个区别,basic的数组是可变大小的,但是c是固定大小的,basic的数组下标从1开始,C下标由于是地址

7、偏移量所以是从0开始。C中的数组和指针实际是同一个东西,所以用的时候混着用。由于是从c#下调试所以使用中和纯粹的C语言也有所区别。实际应用中,在.net环境下除非是参数数组,其它时候一般使用List,如果是二维数组一般用List、DataTable或者数据库去完成。、数组怎么用?咱们先看两个关于数组显示输出的问题。练习1:计算素数,要求先显示指定范围内一共多少素数,然后再显示出来。程序分析:我们可以用一个变量来记录数量,用一个数组来记录数字,然后再遍历数组,显示出来。程序代码如下:运行结果如下:思考:程序显示素数的时候为什么不用foreach,而是用效率相对低的for?其中注释掉的是List的

8、使用方法,有兴趣可以看看。其实List要比直接用数组效率更高。练习2:输出菱形图案。程序分析:这次像上面一样一行数据就不能解决问题了,就需要使用到二维数组。二维数组就好像一个表格一样。我们可以像表格的行列一样去访问数据。程序代码如下:由于两个显示输出同时生效,所以输出结果是两个菱形:至于到底用哪个语句输出看个人习惯。8、矩阵、矩阵是指纵横排列的二维数据表格。、计算矩阵乘法、分析:在计算机中,一个矩阵实际上就是一个二维数组。一个n行m列的矩阵与一个m行p列的矩阵可以相乘,得到的结果是一个n行p列的矩阵,其中的第i行第j列位置上的数为第一个矩阵第i行上的m个数与第二个矩阵第j列上的m个数对应相乘后

9、所得的m个乘积之和。(以上算法,来自XX)其实就是矩阵1的i行所有数字分别乘以矩阵2的j列所有数字之和.用编程语言翻译一下就是:结果矩阵i,j=矩阵1i,k*矩阵2k,j+矩阵1i,k+1*矩阵2k+1,j+其中的k是有规律可循的,可以用一个循环去做.(因为在C#下调试所以这里使用了c#的写法)、既然有了算法,我们就把算法用程序设计语言描述出来运行结果如下:9、打印出杨辉三角形、杨辉三角是这个样子的:、程序分析:如果直接打印一个这样的图形不太好弄,所以咱们把所有数字都左对齐,如果弄一个这样的就好办多了:可以看出每行的开始和结尾都是1,中间的数是对着的上面两个数的和。我们先把所需要的所有数字,全都存储到一个二维数组中,然后再通过调整格式的方式输出我们需要的三角形。、程序代码如下:输出结果本题开头那两个截图。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1