当前位置:文档之家› C语言基础知识

C语言基础知识

常量和变量1.常量: 程序执行过程中,值不变的量。

3 ,'a'变量:值可以改变的量。

一个变量有一个名字,在内存中有一定的存储单元,存放变量的值。

2.常量类型:a.整型:12,0,-3b.实型:4.6,-1.2c.字符型: 'a','d'd.符号常量: #define PRICE 30 (PRICE不能再被赋值且要大写)3.变量: 先定义,后使用。

一个变量只能被指定为一确定类型。

4.标识符:标识变量名,符号常量名,函数名,数组名,类型名,文件名的有效字符数列。

a.由字母、数字、下划线三种字符组成,第一个字符必须为字母或下划线。

b.大写字母、小写字母被认为是两个不同的字符。

c.长度一般小于8个。

数据类型一.整型:1.整型常量a.十进制:12,-3,0b.八进制:以0开头。

c.十六进制:以0x开头。

2.整型变量a. int -32768——32767b. short int -32768——32767c. long intd. unsigned int 0——65535e. unsigned short 0——65535f. unsigned longint、short int、long int 第一位为符号位 0000001 (0为正,1为负)unsigned 第一位不是符号位 0000001所以int型和unsigned型的000001不是同一个值。

二.实型:1.实型常量:a.十进制数:数字和小数点组成。

0.12,.12,12.0,0.0b.指数:e之前必须有数字,e后面必须为整数。

12e32.实型变量:a.单精度:float 7位有效数字 111111.1可,111111.11不可。

b.双精度:double 15—16位有效数字。

三.字符型:1.字符常量:a. 'a' , 'x' , '*' ,'$' 。

b. 转义字符:‘\n'换。

'\t'从第九列开始。

'\r'回车。

'\b'退一格。

2.字符变量:char char='a' 一个字符变量在内存占一个字节。

将一个字符常量放到一个字符变量中,并不是把该字符本身放到内存单元中去,而是将该字符的ASC码放到存储单元中,所以字符型数据和整型数据之间可以通用。

一个字符型数据既可以以字符形式输出,又可以以整数形式输出。

四.字符串常量:"how are you", "a","&12"。

不能把一个字符串赋给一个字符变量。

char c='a'对,char c="how" 错。

'a' :在内存中存a。

“a”:在内存中存a\0。

‘\0’是C语言中判断字符串是否结束的标志。

变量赋初值a. int a=3;float f=7.2;char c='a';b. int a,b,c=5;相当于 int a,b,c;c=5;c. int a=3;b=3;c=3; 不可写: int a=b=c=3;各类数值型数据间的混合运算整型、实型、字符型数据可以混合运算:10+'a'+1.5-8765.4321*'b' double<--floatlongunsignedint <--char,shotfloat型转晃?double型char型,shot型转换为 int型int型转换为double型等等算术运算符和算术表达式1.基本算术运算符+ 加- 减* 乘/ 除 5/3=1% 摸(MOD) 5%3=22.强制类型转换运算符:将一个表达式转换成所需类型(类型名)(表达式)(double)a 将a转换为double型(int)(x+y) 将x+y转换为int型(float)(5%3) 将5%3转换为float型putchar函数:输出一个字符#include "stdio.h"a. char a;a='C';putchar(a);b. putchar('\n');c. putchar('\102');getchar函数:输入一个字符#include "stdio.h"a. char c;c=getchar();putchar(c);b. putchar(getchar());c. printf("%c",getchar());putchar函数:输出若干个任意类型的数据a. printf("%d,%d",a,b);b. printf("a=%d b=%d",a,b);1.d 输出十进制整数a. %d:b.%md: 指定输出的宽度。

数据位数小于m,左端补空格;大于m,按实际位数输出。

a=123;b=12345;printf("%4d,%4d",a,b);输出结果为:_123,12345c.%ld: 输出长整型数据。

long a=123456;printf("%ld",a); 用%d,错。

printf("%9ld",a); 输出结果为:___1234562. o 输出八进制数3. x 输出十六进制数4. u 输出unsigned型数据5. c 输出一个字符6. s 输出一个字符串a.%s printf("%s"."how");b.%msc.%-msd.%m.nse.%-m.ns7. f 以小数形式输出实数a.%fb.%m.nfc.%-m.nf8. e 以指数形式输出实数a.%eb.%m.nec.%-m.nescanf函数:输入任意类型的多个数据scanf("%d%d%d",&a,&b,&c); &a指a在内存中的地址。

——按a,b,c在内存的地址将a,b,c的值存入。

if语句1. if (A) B;如果条件A满足,执行B,否则执行下一句。

2. if (A) Belse C;如果条件A满足,执行B,否则执行C。

3. if (A)if (B) Celse D;elseif (F) Helse K;输入三个数,按小到大输出。

main(){ float a,b,c,t;scanf("%f,%f,%f",&a,&b.&c); 4 2 1if (a>b){t=a;a=b;b=t;} 2 4 1if (a>c){t=a;a=c;c=t} 1 4 2if (b>c){t=b;b=c;c=t;} 1 2 4printf("%f,%f,%f",a,b.c);}switch 语句switch(a){case A : B; break;case C : D; break;default : F; break;}如果变量a=A,执行B;执行break语句,跳出swith语句。

如果没有break语句,D,F语句也会执行。

如果变量a=C,执行B;其它情况执行F。

while 语句while(A){B;}如果条件A满足,执行B,否则执行下一句。

(先判断,后执行。

)while(i<-5){s=s+1;i++;}如果i=1,则不满足i<-5,执行下一句。

i值不变。

do-while 语句do{A;}while(B);先执行A,再判断B;如果B满足,再执行A,否则执行下一句。

(先执行,后判断)do{s=s+1;i++;}while(i<-5);如果i=1,执行i++,i=4;不满足i<-5,执行下一句。

for 语句for( A ; B ; C ) D;A:为变量赋初值;判断是否满足条件B;满足则执行D再执行C再判断B;不满足则执行下一句。

for(i=1;i<=5;i++) s=s+1;for(i=1,s=0;i<=5;i++) s=s+1;for( ;i<=5;i++) s=s+1;for( ;i<=5; ) { s=s+1; i++;}break 语句break 语句:终止循环。

用于循环语句,switch语句。

while(A){if (B) C; break;......}执行break语句,跳出循环,执行后面的语句。

continue 语句continue 语句:只结束本次循环,而不是终止整个循环。

while(A){if (B) C; continue;......}执行break语句,跳出循环,再判断A,继续执行循环。

相关主题