2009年6月4日星期四

关于C语言的一些小知识

main 是主函数,有且只有一个主函数.
prinf函数作用是指把要输出的内容送到显示屏显示.
include称为文件包含命令----扩展名为.h的文件为头文件,如#include -----
输入函数scanf,正弦函数sin,输出函数printf...是库函数.
双精度浮点型double--占8字节,即64位,










----
整型变量其实就是"整数变量",有四种形态,如int(2字节),short/shortint,long/longshort,unsigned.

计算机中小数不叫小数,而叫浮点数float.

16位处理器系统int是16个bit,2字节
(32位......32..4..)----看系统的,64位照推.

布尔值(Boolean value),也叫做布尔数据,是有两个值:1 和0 (有时叫做真和假)的简单数据。常用在判断语句中判断是否满足执行条件。

微处理器就是CPU


关于二进制等等:在WIKI里搜索"二进制"



换行符 \n

字符类型 char

双精度浮点数类型 double
http://www.is.pku.edu.cn/~qzy/c/btype.htm

http://www.is.pku.edu.cn/~qzy/c/operator.htm

乘 *

除 /

等于 ==

不等于 !=

加 +

减 -

一元,二元,三元运算:元就是代表参与计算的变量个数
比如a+b 那么这个“+”运算符就是二元!
比如&a,是取一个变量的地址,这是一个一元运算符。
c语言中有个也是唯一的三元运算符,就是“? :”用法就是c?a:b有些运算符既可以是一元的也可以是二元的。
比如"-"如果a-b就是二元运算符做减法,如果是-a,那么就是一元运算符取a的相反数!

输入输出格式符: %d 整数 %f 浮点数 %c 字符

%lf表示以双精度浮点数(double)格式输出


数据结构+算法=程序

做任何事情都有一个步骤,为解决问题而作出的方法和步骤叫算法

我的要求是用计算机解题,也就是说用计算机实现算法.

在C语言中,数据类型可分为:基本数据类型,构造数据类型,指针类型,空类型四大类.



整型常量就是整常数,C语言中使用的整常数有8进制,16进制,10进制三种.


十进制无符号整常数的范围为0~65535,有符号数为-32768~+32767。八进制无符号数的表示范围为0~0177777。十六进制无符号数的表示范围为0X0~0XFFFF或0x0~0xFFFF。如果使用的数超过了上述范围,就必须用长整型数来表示。长整型数是用后缀“L”或“l”来表示的.















方便理解:1,什么是主函数:一个程序(prgramma),无论复杂或简单,总体上都是一个“函数”;这个函数就称为“main 函数”,也就是“主函数”。比如有个“做菜”程序,那么“做菜”这个过程就是“主函数”。在主函数中,根据情况,你可能还需要调用“买菜,切菜,炒菜”等子函数。

接下来的问题是,“到底是谁调用你去做菜”?也许是夫人的命令,也许是自己的确饿了;但不管如何,你做菜总是因为有人要求你去做。A要求B去做某事,这称为“A调用B”。对程序来说,调用它们的人就是“操作系统”。我们画一个“调用”过程图来加深理解。
















(函数调用示意图)
图中带箭头的线,用于表示“调用”。


不过大家不要被我误导,事实上没有“子子函数”这种说法。考虑一种情况:子函数A可以调用子函数B,而子函数B又可以调C函数,最后C函数可反过来调用A函数(称为递归调用),那么谁是“子”谁是“父”难以定义,因此,只要不是主函数,在调用关系上,我们都统称为“子函数”,甚至就叫为“函数”。关心一函数位于第几层调用关系,并没有多大的意义。
http://www.d2school.com/bcyl/cpp3/ls/ls001-003-main.htm


2, 预处理命令:http://ccc.gzhu.edu.cn/down/c/dianzijaoan/chaper8.doc

预处理命令
ANSI 标准定义的C语言预处理程序包括下列命令:
# d e f i n e
# e r r o r
# i n c l u d e
# i f
# e l s e
# e l i f
# e n d i f
# i f d e f
# i f n d e f
# u n d e f
# l i n e
# p r a g m a
非常明显,所有预处理命令均以符号#开头,
C提供的预处理功能有三种:
1、 宏定义
2、 文件包含
3、 条件编译




“文件包含”处理
一般形式:
#include "stdio.h"
#include
注意:
1、 一个include命令只能指定一个被包含文件,如果要包含n个文件,要用n个include命令。
2、 如果文件1包含文件2,文件2包含文件3的内容,则可在文件中使用两个include命令分别包含文件2和文件3,而且文件3应出现在文件2之前,即在file1.c中定义:
#include “file3.h”
#include “file2.h”
3包含可以嵌陶
4、可以有如下两种方式:
#include "stdio.h"
#include
尖括号表示系统到存放C库函数头文件所在的目录中寻找要包含的文件;双引号表示系统先在用户当前目录中寻找要包含的文件,如果找不到,在按尖括号的方式查找。
一般来说,库函数的包含文件用尖括号的形式,而用户自定义的函数用双引号的形式。
5、被包含文件与其所在的文件在预编译后形成一个文件。


3, C语言:什么叫可执行语句?比如:int counter = 1;这条声明语句不是一条可执行语句。
而int counter;
counter = 1;
在这两条语句中,声明语句是不可执行语句,但是赋值语句却是可执行语句。
请问这怎么理解?






最佳答案
int counter=1;
这句是说你告诉电脑有个整型变量叫counter,并且counter初值为1,那么电脑就认识它了,这些是你告诉电脑的,电脑本身并没有做什么,它只是接受你所告诉它的。所以申明的就是你告诉电脑的。
int counter;
counter = 1;
第一句是你告诉电脑有个变量叫counter,它只是知道有这么一个变量出现了,它也没做什么,只是接收你所告诉它的。
到了第二句,你命令它counter=1,它听了之后就在内存中把counter的值变为1了,所以电脑执行了这句。

最简单 执行就是运行。

4,C#的语法与C++的差异

http://www.xooob.com/202026.html

5,整型变量、实型变量、字符型变量的定义和引用




整型变量的定义和引用
#include    //程序头文件
void main()    //主函数
{       //程序开始
int a;      //定义基本整型变量
short b;    //定义短整型变量
long c;    //定义长整型变量
unsigned long s;  //定义无符号长整型变量
a=3,b=4,c=5;  //整型变量的引用
s=a+b+c;   //整型变量的引用
printf("s=%d\\n",s);   //在屏幕输出计算结果
}       //程序结束
点击查看程序运行结果


实型变量的定义和引用
#include //程序头文件
void main()    //主函数
{      //程序开始
float r;     //单精度型变量
float s,s1;     //单精度型变量
double v;    //双精度型变量
r=5;    //实型变量的引用
s=3.14*r*r;    //实型变量的引用
s1=4*3.14*r*r;
v=3.14*r*r*r*4/3;
printf("s=%f",s); /   /在屏幕输出计算结果
printf("s1=%f",s1);    //在屏幕输出计算结果
printf("v=%f",v);     //在屏幕输出计算结果
}          //程序结束
点击查看程序运行结果


字符型变量的定义和引用
#include
void main()
{
char ch1,ch2;      //定义二个字符型变量
ch1='a';       //第一个字符的值为:a
ch2='A';       //第二个字符的值为:A
printf("%c,%c\\n",ch1,ch2);
点击查看程序运行结果

http://joybbs.bokee.com/viewdiary.13960567.html

6,C语言的整型变量分别是哪4种整型类型

基本型:类型说明符为int,在内存中占2个字节

短整量:类型说明符为short int或short。所占字节和取值范围均与基本型相同。

长整型:类型说明符为long int或long,在内存中占4个字节。

无符号型:类型说明符为unsigned。

http://zhidao.baidu.com/question/15748744.html

----------

C语言的整型变量到底是什么意思?

整型,就是整数,比如5,8
它区别与小数(计算机中叫浮点数),比如5.8就是小数,而不是整数
变量,也就是说它是可以变化的,比如int i;
i就是一个变量,可以给它赋值i=2,i=3等等之类的
它区别与常量,比如5,它就是一个常量,不能再给它赋值,如5=6这是不行的
整型变量,就是可以被赋整数值的变量

--------

C语言中介绍的整型变量 即十进制 十六进制什么的是什么意思?

http://zhidao.baidu.com/question/15730013.html?fr=qrl

------

在c语言中,整型变量int为什么占4个字节?float占4个字节?double占8个字节?

int占多少个字节是由编译器决定的,ANSI标准定义int是占2个字节.TC是按ANSI标准的,它的int是占2个字节的.你可以在TC里试.printf("%d",sizeof(int));结果是2;but在VC里,一个int是占four(4)个字节的,在VC里面,printf................float,double也是一样的,在different编译器里,占的字节是不一样的.

16位的处理器中int 占2个字节

占几个字节看系统
32位系统下一个字是32个bit,就是4个字节
16位系统下一个字是16个bit,2字节
64位系统类推
系统的“位数”就是系统中一个“字”所占bit数
字的大小与系统的cpu运算单位大小、寻址单位大小是一致的
C语言的一个int就是系统的一个“字”
float和double类似,他们的存储方式另有标准规定

7,Windows操作系统还是处理器的16位、32位、64位是什么意思?

http://zhidao.baidu.com/question/51193850.html

------

8,C语言实例:
一,打印“Good morning!”
#include
main() {
printf("Good morning!\n") ;
}


超好的例子网站:http://www.is.pku.edu.cn/~qzy/c/examples/index.htm

9, C语言运算符表
运算符按照优先级大小由上向下排列,在同一行的运算符具有相同优先级。第二行是所有的一元运算符。

http://www.is.pku.edu.cn/~qzy/c/operator.htm



C语言基本类型

http://www.is.pku.edu.cn/~qzy/c/btype.htm


--------------


10,
C程序的语句的分类!
http://www.zhuoda.org/lunzi/11278.html
如何学习C语言的四种程序结构
http://www.zhuoda.org/lunzi/12230.html

----------

C程序的格式字符串!

http://www.zhuoda.org/lunzi/11280.html

------------------


C语言中使用的词汇分为六类:
标示符:C规定,标示符只能是字母A~Z,a~z,数字0~9,、下划线  _  组成的字符串.

关键字

运算符

分隔符

常量 

注释符:在/*与*/之间的是注释符


11,符号常量在使用之前必须先定义,其一般形式为:#define 标识符常量其中#define也是一条预处理命令(预处理命令都以"#"开头),称为宏定义命令(在后面预处理程序中将进一步介绍),其功能是把该标识符定义为其后的常量值。







 




2 条评论:

  1. http://www.is.pku.edu.cn/~qzy/c/

    一个超级超级好的网站~~

    回复删除
  2. 字符(String,每个字符占一字节,可以储存0~65,535个字符),布尔(Boolean,只有两个值True/-1,或False/0)。



    长语句的分行 : C等语言用“;”隔开语句与语句




    八、函数与过程 :

    函数与过程有许多相似的地方,它们之间最大也是最本质的区别就在于,函数有一个返回值,而过程只是执行一系列动作,所以可以简单的把函数理解成为一个变量,而VB中的每个事件都是一个过程,比如Command1_Click()就是一个过程。

    因为在程序设计中经常会有重复的地方,所以把它做成一个函数或一个过程,在使用时进行调用,可以节省大量的输入代码的时间,而且使用函数和过程也便于程序的结构化和修改查看。函数和过程都可以有参数,也可以没有参数。

    关于函数和过程我将在以后的章中配合实例讲解,请您继续留意VB教程。





    一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。



    学编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可以开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些计算机科学和数学基础理论。学过之后,很多以前遇到的问题都会迎刃而解,使人有豁然开朗之感。因此在学习编程的过程中要不断地针对应用中的困惑和问题深入学习数据结构、算法、计算机原理、编译原理、操作系统原理、软件工程等计算机科学的理论基础和数理逻辑、代数系统、图论、离散数学等数学理论基础知识。这样经过不断的学习,再努力地实践,编程水平一定会不断提高到一个新高度。





    程序=数据结构+算法,程序就是一段指令,看看现在的计算机技术,从硬件的描述语言,汇编,高级语言,脚本,其实可以都认为是‘程序’



    算法 Algorithm
    算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗点说,就是计算机解题的过程。在这个过程中,无论是形成解题思路还是编写程序,都是在实施某种算法。前者是推理实现的算法,后者是操作实现的算法。

    一个算法应该具有以下五个重要的特征:

    有穷性: 一个算法必须保证执行有限步之后结束;
    确切性: 算法的每一步骤必须有确切的定义;
    输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件;
    输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;
    可行性: 算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。
     




    算法是程序设计的精髓,程序设计的实质就是构造解决问题的算法,将其解释为计算机语言


    http://www.comp.nus.edu.sg/~xujia/mirror/algorithm.myrice.com/datastructure/defination.html 数据结构



    http://www.jszx.zj.cn/pascal/yuyan.htm




    在高级语言中: 初级:QBASIC
    中级:PASCAL
    高级:C语言,VB等




    上次没看完的内容:


    http://www.enet.com.cn/eschool/zhuanti/shipin/wyzz.shtml

    http://www.enet.com.cn/eschool/zhuanti/frontpage/

    http://www.enet.com.cn/eschool/zhuanti/shipin/cxsj.shtml


    http://www.jszx.zj.cn/pascal/yuyan.htm


    http://www.jszx.zj.cn/pascal/gaishu.htm

    http://www.jszx.zj.cn/pascal/jichu.htm


    http://www.7di.com.cn/jiaoan/gz/qt/200512/18731.html








    http://blog.pfan.cn/rickone

    回复删除