C语言程序设计课程设计小结版Word格式文档下载.docx
《C语言程序设计课程设计小结版Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言程序设计课程设计小结版Word格式文档下载.docx(36页珍藏版)》请在冰豆网上搜索。
单
目
运
算
符
(类型)
强制类型转换
++
自增运算符
--
自减运算符
*
取址运算符
&
取地址运算符
!
逻辑非运算符
~
按位取反运算符
sizeof
长度运算符
3
/
除
双
乘
%
余数(取模)
4
+
加
减
5
<
左移
>
右移
6
大于
=
大于等于
小于
小于等于
7
==
等于
不等于
8
按位与
9
^
按位异或
10
|
按位或
11
逻辑与
12
||
逻辑或
13
:
条件运算符
三目运算符
14
赋值运算符
/=
除后赋值
*=
乘后赋值
%=
取模后赋值
+=
加后赋值
-=
减后赋值
左移后赋值
右移后赋值
按位与后赋值
^=
按位异或后赋值
|=
按位或后赋值
15
逗号运算符
3.数据类型小结:
表格形式列出11个基本类型的说明符、字节数、范围(1面)。
说明符
字节数
范围
char
-128~127
signedchar
unsignedchar
0~255
[signed]short
-32768~32767
unsignedshort
0~65535
[signed]int
-48~47
[signed]long
unsignedlong
0~95
float
~+38
double
~+308
longdouble
4.预处理命令小结:
列出11个预处理命令,并简要说明其作用(1面)。
#define:
定义宏
#undef:
取消已定义的宏
#include:
包含一个源代码文件
#if:
如果给定条件为真,则编译下面代码
#ifdef:
如果宏已经定义,则编译下面代码
#ifndef:
如果宏没有定义,则编译下面代码
#else:
建立另一个选择(在#if失败的情况下)
#elif:
如果前面的#if给定条件不为真,当前条件为真,则编译下面代码
#endif:
结束一个#if……#else条件编译块
Defined:
在#if和#elif表达式中,常常是用defined运算符来检查是否定义了预处理器标识符
5.标准函数小结:
按头文件(15个)列出每个头文件中的函数(146)、宏(86)、类型(18)、变量
(1),共251个(25面),要求给出函数原型声明、作用、成功返回和失败返回的值。
头文件
函数原型声明、宏定义
作用
返回的值
voidassert(intexpression)
测试一个条件并可能使程序终止
无
intiscntrl(intc)
测试控制字符
如果c是控制字符,返回非零值;
否则返回零
intisprint(intc)
测试显示字符
如果c是显示字符(包括空格),返回非零值;
intisgraph(intc)
测试图形字符
如果c是显示字符(除了空格),返回非零值;
intisalnum(intc)
测试是字母或数字
如果isalnum是字母或数字,返回非零值;
否则返回零。
(如果isalph(c)或isdigit(c)
为真,则c是字母或数字。
)
intisalpha(intc)
测试字母
如果isalnum是字母,返回非零值;
(如果islower(c)或isupper(c)
为真,则c是字母。
intisupper(intc)
测试大写字母
如果c是大写字母,返回非零值;
intislower(intc)
测试小写字母
如果c是小写字母,返回非零值;
intisdigit(intc)
测试数字
如果c是数字,返回非零值;
intisxdigit(intc)
测试十六进制数字
如果c是十六进制数字(0-9、a-f、A-F),返回非零值;
intispunct(intc)
测试标点字符
如果c是标点符号字符,返回非零值;
除了空格、字母和数字字符以外,
所有显示字符都可以看成是标点符号
intisspace(intc)
测试空白字符
如果c是空白字符,返回非零值;
空白字符有空格('
'
)、换页符('
\f'
)、
换行符('
\n'
)、回车符('
\r'
),横向制表符('
\t'
)和纵向制表符('
\v'
inttolower(intc)
转换成小写字母
如果c是大写字母,则返回相应的小写字母。
如果c不是大写字母,则返回无变化的c
inttoupper(intc)
转换成大写字母
如果c是小写字母,则返回相应的大写字母。
如果c不是小写字母,则返回无变化的c
#defineEDOM
源自于函数的参数超出范围,例如sqrt(-1)
#defineERANGE
源自于函数的结果超出范围
externinterrno
定义为一个int型态的左值,包含任何函数使用errno功能所产生的上一个错误码
#defineFLT_RADIX
2定义指数的基本表示(如base-2是二进制,base-10是十进制表示法,16是十六进制)
#defineFLT_ROUNDS
定义浮点型数值四舍五入的方式,-1是不确定,0是向0,1是向最近,2是向正无穷大,3是负无穷大
#defineFLT_DIG
6float类型精度(小数位数)
#defineFLT_EPSILON
1E-5使“+x!
=”成立的最小x
#defineFLT_MANT_DIG
基数为FLT_RADIX的尾数中的数字数
#defineFLT_MAX
1E+37最大浮点数
#defineFLT_MIN
1E-37最小的规范化浮点数
#defineFLT_MAX_EXP
使FLT_RADIX^(n-1)可表示的最大n
#defineFLT_MIN_EXP
使10^n为规范化数的最小n
#defineFLT_MAX_10_EXP
10进制表示法的的指数的最大整数值
#defineFLT_MIN_10_EXP
10进制表示法的的指数的最小整数值
#defineDBL_DIG
10double类型精度(小数位数)
#defineDBL_EPSILON
1E-9使“+x!
#defineDBL_MANT_DIG
#defineDBL_MAX
1E+37最大双精度浮点数
#defineDBL_MIN
1E-37最小的规范化双精度浮点数
#defineDBL_MAX_EXP
#defineDBL_MIN_EXP
#defineDBL_MAX_10_EXP
#defineDBL_MIN_10_EXP
#defineLDBL_DIG
Longdouble类型精度(小数位数)
#defineLDBL_EPSILON
能表示的最小有符号数
#defineLDBL_MANT_DIG
定义数值里数字的个数
#defineLDBL_MAX
浮点型的最大限
#defineLDBL_MIN
浮点型的最小限
#defineLDBL_MAX_EXP
指数的最大整数值
#defineLDBL_MIN_EXP
指数的最小整数值
#defineLDBL_MAX_10_EXP
#defineLDBL_MIN_10_EXP
#defineCHAR_BIT
8char类型的位数
#defineSCHAR_MAX
+127signedchar类型的最大值
#defineSCHAR_MIN
-127signedchar类型的最小值
#defineUCHAR_MAX
255unsignedchar类型的最大值
#defineCHAR_MAX
UCHAR_MA或SCHAR_MAXchar类型的最大值
#defineCHAR_MIN
0或SCHAR_MIN
char类型的最小值
#defineSHRT_MAX
+32767short类型的最大值
#defineSHRT_MIN
-32768short类型的最小值
#defineUSHRT_MAX
65535unsignedshort的最大值
#defineINT_MIN
-32768int类型的最小值
#defineINT_MAX
32767int类型的最大值
#defineUINT_MAX
65535unsignedint类型的最大值
#defineLONG_MIN
-48long类型的最小值
#defineLONG_MAX
47long的最大值
#defineULONG_MAX
95unsignedlong的最大值
structlconv{}
保存当前区域中的数字和货币信息
#defineLC_ALL
全部本地化信息
#defineLC_COLLATE
影响strcoll和strxfrm
#defineLC_CTYPE
影响字符处理函数和多行字符处理函数
#defineLC_MONETARY
影响localeconv返回的货币格式化信息
#defineLC_NUMERIC
影响格式化输入输出字符中的小数点符号
#defineLC_TIME
影响strftime函数
char*setlocale(intcategory,char*local)
设置地区
如果locale是空指针,就返回一个指向与当前地区的category相关的字符串的指针。
否则,返回一个指向与新地区的category相关的字符串的指针。
如果操作失败,则返
回空指针
structlconv*localeconv(void);
获取区域转换
指向结构的指针,此结构含有当前区域信息
doublesin(doublex)
计算sinx的值
计算结果
doublecos(doublex)
计算cosx的值
doubletan(doublex)
计算tanx的值
doubleasin(doublex)
计算
的值
doubleacos(doublex)
doubleatan(doublex)
doubleatan2(doubley,doublex)
doublesinh(doublex)
计算sinhx的值
doublecosh(doublex)
计算coshx的值
doubletanh(doublex)
计算tanhx的值
doubleexp(doublex)
计算e^y的值
doublelog(doublex)
计算lnx的值
doublelog10(doublex)
doublepow(doublex,doubley)
计算x^y的值
doublesqrt(doublex)
doubleceil(doublex)
上整数
大于或等于x的最小整数。
doublefloor(doublex)
向下取整
小于或等于x的最大整数。
doublefabs(doublex)
浮点数的绝对值
x的绝对值
doubleldexp(doublex,intn)
联合小数和指数
x×
2
exp的值。
可能会发生取值范围错误。
doublefrexp(doublex,int*exp)
分解成小数和指数
f,即value的小数部分
doublemodf(doublex,double*ip)
分解成整数和小数部分
value的小数部分
doublefmod(doublex,doubley)
浮点模数
x除以y的余数。
如果y为零,是发生定义域错误还是fmod函数返回零是由实现定义的。
typedefstruct{}jmp_buf
setjmp将当前信息保存在jmp_buf结构类型中供longjmp使用
intsetjmp(jmp_bufenv)
准备非局部跳转
当直接调用时,返回为零。
当从longjmp函数调用中返回时,返回非零值
voidlongjmp(jmp_bufenv,intval)
非区域跳转
intraise(intsig)
产生信号
如果成功,返回零;
否则返回非零值
void(*signal(intsig,void(*handler)(int)))(int)
安装信号处理函数
指向此信号前一个处理函数的指针。
如果无法安装处理函数,则返回SIG_ERR
#defineSIGABRT
异常终止,如调用abort()。
#defineSIGFPE
算术运算出错,如除数为0或溢出。
#defineSIGILL
非法函数映象,如非法指令。
#defineSIGINT
交互式信号,如中断。
#defineSIGSEG
非法访问存储器,如访问不存在的内存单元。
#defineSIGTERM
发送给本程序的终止请求信号。
#defineSIG_DFL
默认信号处理函数
#defineSIG_ERR
表示一个错误信号,当signal函数调用失败时的返回值。
#defineSIG_IGN
信号处理函数,表示忽略该信号
typedefvoid*va_list
用来保存宏va_arg与宏va_end所需信息
#defineva_start(ap,parmN)
使va_list指向起始的参数
#defineva_end(ap)
释放va_list
#defineva_arg(ap,type)
检索参数
#defineNULL0
指针常量
typedefintptrdiff_t
带符号的整数类型,用来表示指针相减的结果类型
typedefunsignedintsize_t
无符号整数类型,用来表示sizeof操作符的结果类型
typedefunsignedshortwchar_t
宽字符类型
#defineoffsetof(type,member_name)
获得字段在结构体中的偏移量
#defineEOF(-1)
代表文件的结尾
#defineBUFSIZ
setbuf函数所使用的缓冲区的大小
#defineFOPEN_MAX
(20)同时打开的文件的最大数量
#defineFILENAME_MAX
文件名的最大长度
#defineTMP_MAX
tmpnam最多次数
#defineL_tmpnam
整数,最大长度的临时文件名
#definestdin
标准输入流,默认为键盘
#definestdout
标准输出流,默认为屏幕
#definestderr
标准错误流,默认为屏幕,可输出到文件
#define_IOFBF
表示完全缓冲
#define_IOLBF
表示线缓冲
#define_IONBF
表示无缓存
#defineSEEK_CUR
取得目前文件位置
#defineSEEK_END
将读写位置移到文件尾时
#defineSEEK_SET
将读写位置移到文件开头
运算符sizeof产生的无符号整类型
typedefstruct{}FILE
用于声明文件指针
typedeflongfpos_t
能够唯一说明文件中的每个位置的对象
FILE*fopen(char*filename,char*mode)
打开文件
文件指针。
在执行下一次关于文件的操作时会用到此指针。
如果无法打开文件则返回空指针
FILE*freopen(char*fname,char*mode,FILE*stream)
重新打开文件
如果操作成功,返回stream的值。
voidsetbuf(FILE*stream,char*buffer)
设置缓冲区
intsetvbuf(FILE*stream,char*buf,intmode,size_tsize)
如果操作成功,就返回零。
如果mode无效或者无法满足要求,则返回非零值
intfclose(FILE*stream)
关闭文件
如果成功,就返回零。
如果检测到错误,就返回EOF
size_tfread(void*ptr,size_tsize,size_tnmemb,FILE*stream)
从文件读块
实际读入的元素(不是字符)数量。
如果fread遇到文件末尾或检测到读取错误,那么此
数将会小于nmemb。
如果nmemb或size为零,则返回值为零
size_tfwrite(void*ptr,size_tsize,size_tnmemb,FILE*stream)
向文件写块
实际写入的元素(不是字符)的数量。
如果fwrite函数检测到写错误,则这个数将会小
于nmemb
intprintf(constchar*format,...)
格式化写
写入的字符数量。
如果发生错误就返回负值
intfprintf(FILE*stream,constchar*format,...)
格式化写文件
intsprintf(char*str,constchar*format,...)
格式串写
存储到数组中的字符数量,不计空字符
intvprintf(constchar*format,va_listarg)
用可变实际参数列表格式化写
intvfprintf(FILE*stream,constchar*format,va_listarg)
用可变实际参数列表格式化写文件
intvsprintf(char*str,char*format,va_listarg)
用可变实际参数列表格式化写字符串
存储的字符数量,但不计空字符
intscanf(constchar*format,...)
格式化读
成功读入并且存储的数据项数量。
如果发生错误或在可以读入任意数据项之前到达了文
件末尾,就返回EOF
intfscanf(FILE*stream,constchar*format,...)
格式化读文件
如果发生错误或在可以读数据项前到达了文件末尾,那
么就返回EOF
intsscanf(char*str,constchar*format,...)
格式串读
如果在可以读入任意数据项之前到达了字符串末尾,
就返回EOF
char*fgets(char*str,intn,FILE*stream)
从文件中读取字符串
s(指向数组的指针,此数组存储着输入)。
如果读取操作错误或fgets函数在存储任何
字符之前遇到了流的末尾,都会返回空指针
intfputs(constchar*str,FILE*stream)
向文件写字符串
如果成功,返回非负值。
如果写发生错误,则返回EOF
char*gets(char*str)
读入字符串
s(即存储输入的数组的指针)。
如果