C语言知识点

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二章数据类型、运算符、表达式、赋值语句与输入输出

一、标识符

1.不能是关键字

2.只能由数字、下划线和英文字母组成

3.第一个字符只能为下划线和英文字母

如:abc.d、Level-A、switch都不符合标识符的命名规则

二、常量

1.整形常量:0x27,016分别表示十六进制和八进制(以0开始的数字)的整数

2.用指数方式表示的常量:e前e后必须有数,e后必须是整数。如2E1.6不合法

3.字符型常量:注意转义字符,如’\’’和’\\’分别表示字符单引号和斜杠,如‘\x51’表示ascii

码为十六进制数51的字符,如‘\32’和‘\0’分别表示ascii码为八进制数32和0的字符。

注意字符型数据在计算机内部保存的是该字符的ascii码,所以’\0’的值就是0,’\32’-26的值为0

4.字符串常量:注意以字符’\0’结尾。如char p[10] = “abcd”;则p[4]的值为’\0’即为0。注

意字符串常量以字符组成,字符的表示形式可以是转义字符的形式,如”abc\\c”,这里的第四个字符是一个斜杠’\\’。

三、运算符

1.赋值运算符: 左边必须是变量、数组元素、指针指向的数据或者结构成员中的变量类型

数据。如int a,b,c; a+b = c;这个赋值语句是错误的。

2.逻辑运算符:&&,||。如判断一个字母变量是大些字母char a; if(a >= ‘A’ && a <=’Z’)……

3.++。前置运算符:先将数据增加再将增加后的数据放入表达式中。

后置运算符:先将数据放入表达式中,再对数据增加。

char *p,*q;

char A[10];

p = A;q = A;

*(++p) = 10;//表示先将p指向A[1]然后将A[1]设置为10

*(q++) = 10;//表示先将A[0]设置为10然后将q指向A[1]

又如:

int a = 1;

a++;printf(“%d”,a);//屏幕打印出的值为2

又如:

int a = 1;

printf(“%d”,a++);//屏幕打印出的值为1

又如:

int a = 10;

switch(a++)

{

case 10: printf(“10”);break;

case 11: printf(“11”);break;

}

//屏幕打印出的值为10

4.--

如:int A[10];

int a,b;

a = 8,

b = 8;

A[a--] = 10; //表示先将A[8]设置为10,然后将a的值减1

A[--b] = 10; //表示先将b的值减1,变为7,然后将A[7]设置为10

5.相等比较运算符:==

注意是两个等于。

如:

char A[4] = {‘e’, ’d’, ’f’, ’a’};

int i=3;

if(A[i] == ‘a’){}//不能是A[i]=’a’

6.printf():%d,表示输出整数,如果是字符型数据,则输出字符型数据的ascii码;

如char a = ‘A’;

printf(“%d”,a);//打印A的ascii码,即在屏幕上显示65

%f,表示输出浮点型数据

如float speed = 10.1f;

printf(“%f”,speed);//在屏幕上打印浮点数10.1

可以直接输出字符串,如:

printf(“hello world”);//在屏幕上打印hello world

7.scanf

注意:以空格、Tab键或者回车键作为输入终止;输入到变量中,这个变量名前要加&,如果输入到字符数组中,则不用加&。

如:

float t; scanf(“%f”,&t);//从键盘输入一个浮点数

又如:

char a[10],b[10];

scanf(“%s %s”,a,b);

当输入you are good student时a和b中的值为you和are

8./ %

/表示除法,当两个操作数都是整数,进行的是整除运算。如:3/5的结果是0

%表示取余数运算,如5%3的结果是2,表示5除以3的余数。

又如:怎么求1234的个位数?可以这样:int t = 1234; int b; b = t%10;//b计算的结果就是个位数。继续上面如何求十位数? 可以这样: t = t/10; b = t%10;//先把1234整除10,变为123,然后对123求除10以后的余数,结果就是3

9.sizeof

参数为变量或者数据类型,表示变量或者该数据类型在内存中的字节数。如:

char a;printf(“%d”,sizeof(a));//在屏幕上打印出1

10.程序框架

#include

int main()

{

return 0;

}

第四章分支结构

1.if else 匹配规则:else与最近的没有匹配的if匹配

结构

if( ){}

else if() {}

else if(){}

else

只会执行其中的一个分支

如:

char a = ‘a’;

if(a >=‘a’ && a<= ‘z’)a = ‘A’- ‘a’ +a;

else if(a >=‘A’ && a<= ‘Z’)a = ‘1’;

else if(a >=‘0’ && a<= ‘9’)a = ‘\n’;

else printf(“其余字符”);

上述if语句结构,只会执行第一个分支后的语句,即只会执行a = ‘A’- ‘a’ +a;语句,其余语句都不会执行。

2.switch…case

注意:case后的语句中若无break语句,则执行完case后的语句后会执行后面每一个case的语句。

如:

switch(2)

{

case 2: printf(“2”);

case 3: printf(“3”);

case 4: printf(“4”);

}

上述代码会输出234

第五章循环结构

1.for循环

注意:循环语句为for后的第一个语句。

如:

for(i= 1;i<=5;i++)

k++;//此语句是for的循环体

k++;//此语句不是for的循环体

printf(“%d”,k);//屏幕输出6

2.while循环

如:

int i= 4,k = 4;

while(i--)

{

k++;

}//当i变为0时,循环终止,循环体会执行4次,所以K变为4

3.do…while循环

注意先执行循环体,再判断循环条件,循环体至少执行一次

相关文档
最新文档