十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
C语言语句分为5 类 : 1、 表达式语句 2、 函数调用语句 3、 控制语句 4、 复合语句 5、 空语句 表达式语句 : 表达式+分号; 函数调用语句 : 函数名+实际参数+分号; 格式一般为:函数名(参数表); 控制语句 : 1,条件判断语句 if语句,switch语句循环执行语句 例如:if(ab) max=a; else max=b; // 该语句表示:如果ab条件成立,则max取a的值,否则max的值是b。在ab条件的控制下,出现两个可能的分支流程。而switch语句能实现多个分支流程。 do while语句,while语句,for语句转向语句 2,循环语句有for、while和do_while三种。当循环语句的循环控制条件为真时,反复执行指定操作,是C语言中专门用来构造循环结构的语句。 如:for(i=1;i10;i++) printf("%d",i); i从1开始,每次加1,只要i10就输出i的值,因此i=1,2,3,……,9,共循环9次,输出: 1 2 3 4 5 6 7 8 9 上述功能还可以用while语句和do_while语句实现。 用while语句实现: i=1; while(i10) { printf("%d",i);i++; } 用do_while语句实现: i=1; do { printf("%d",i);i++; } while(i10); 转移语句有break,continue,return和goto四种。它们都能改变程序原来执行顺序并转移到其它位 置继续执行。例如,循环语句中break语句终止该循环语句的执行;而循环语句中的continue语句只结束本次循环并开始下次循环;return语句 用来从被调函数返回到主调函数并带回函数的运算结果;goto语句可以无条件转向任何指定的位置执行。 复合语句 :多个语句用{}括起来,组成复合语句,其中每条语句都以;结束,但}外不能加分号; 空语句 : 空语句是只有分号(;)的语句。由一个分号组成,它表示什么操作也不做。从语法上讲,它的确是一条语句。在程序设计中,若某处从语法上需要一条语句,而实际上不需要执行任何操作时就可以使用它。例如,在���计循环结构时,有时用到空语句。 赋值语句 :属于表达式语句,注意事项如下: 1、 允许嵌套 2、 与为变量赋初值有区别,赋初值是变量说明的一部分,与其他变量要用逗号分隔,而赋值语句需要用分号;结束 3、 变量说明不允许中的赋初值不允许连续赋初值,如int a=b=c=5;是错误的,但赋值语句a=b=c=5是正确的。 4、 注意赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可以出现在任何允许表达式出现的地方,而赋值语句则不能。 如if ((x=y+5)0) z=x;是正确的,而if((x=y+5;)0) z=x;是错误的。
专注于为中小企业提供成都做网站、网站制作、成都外贸网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业孟津免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
用法 double sin(double x);
计算并返回X的正弦值
cos()
用法 double cos(double x);
计算并返回X的余弦值
tan()
用法 double tan(double x);
计算并返回X的正切值
exp()
用法 double exp(double x);
计算并返回常数e的x次幂
fabs()
用法 double fabs(double x);
返回双精度数x的绝对值
pow()
用法 double pow(double x,double y);
计算并返回X的y次幂
sqrt()
用法 double sqrt(double x);
计算并返回x的平方根值
·数值与字符串转换函数 stdlib.h
atof()
用法 double atof(char *str);
把str指向的数字字符串转换为一个双精度数
atoi()
用法 int atoi(char *str);
把str指向的数字串转换为一个整型数
atol()
用法 long atol(char *str);
把str指向的数字串转换为一个长整型数
itoa()
用法 char *itoa(int unm,char *str,int radix);
将整数num按radix规定的进制转换成字符串存入str中
ltoa()
用法 char *ltoa(long unm,char *str,int radix);
将长整数num按radix规定的进制转换成字符串存入str中
ultoa()
用法 char *ultoa(unsigned long unm,char *str,int radix);
将无符号长整数num按radix规定的进制转换成字符串存入str中
·字符的分类与转换函数 ctype.h
isalpha()
用法 int isalpha(int ch);
判断ch是否为字母,是字母返回1 否则返回0
islower()
用法 int islower(int ch);
判断ch是否为小写字母,是小写字母返回1 否则返回0
isupper()
用法 int isupper(int ch);
判断ch是否为大写字母,是大写字母返回1 否则返回0
tolower()
用法 int tolower(int ch);
返回ch的小写字母
toupper()
用法 int toupper(int ch);
返回ch的大写字母
·字符串操作函数 string.h
strlen()
用法 unsigned int strlen(char *str);
返回字符串str中的字符个数(不包括字符串结束标志'\0')
strcat()
用法 char *strcat(char *str1,char *str2);
将字符串str2接到str1后面 返回给str1(str1结束标志'\0'被清除)
strcmp()
用法 int strcmp(char *str1,char *str2);
比较两个字符串str1和str2 str1大于str2时返回整数;等于返回0;小于返回负数
strcpy()
用法 char *strcpy(char *str1,char *str2);
将字符串str2拷贝到str1中 返回给str1
strchr()
用法 char *strchr(char *str,int ch);
在字符串str中着字符ch第一次出现的位置,返回该位置的指针 若没找到ch则返回NULL
·输入输出函数 stdio.h
scanf()
用法 int scanf(char *format,address,...);
从标准输入设备中按format指定的格式输入数据,并把输入的数据依次存入对应的地址address中,返回输入数据个数(通常不需要引用该函数返回值)
getchar()
用法 int getchar(void);
从标准输入设备读入一个字符.成功时返回键入的字符,出错时返回EOF
getch()
用法 int getch(viod);
返回从键盘上读入的字符,屏幕上不显示
gets()
用法 char *gets(char *str);
从标准输入设备读入一个字符串(以换行符结束)送入str中,成功时返回字符串参数str,出错或遇到文件结束时返回NULL
printf()
用法 int printf(char *format,address,...);
将格式串format中的内容原样输出到标准输入设备,每遇到一个%,就按规定的格式依次输出一个表达式argument的值到标准输出设备,返回成功输出的项数,出错时返回EOF(通常不需要引用该函数返回值)
putchar()
用法 int putchar(int c);
将字符c输出到标准输出设备,成功时返回字符c的值,出错时返回EOF(通常不需要引用该函数的返回值)
puts()
用法 int puts(char *str);
将字符串str输出到标准输出设备,并加上换行符,返回最后输出的字符,出错时返回EOF(通常不需要引用该函数的返回值)
fopen()
用法 FILE *fopen(char *filename,*mode);
以mode指定的方式打开文件filename,成功则返回与打开文件相关的文件指针,出错时返回NULL
fclose()
用法 int fclose(FILE *fp);
关闭fp指定的文件,释放其文件缓冲区,成功返回0,失败返回EOF(通常不需要引用该函数的返回值)
fcloseall()
用法 int fcloseall(void);
关闭所有打开的文件
feof()
用法 int feof(FILE *fp);
检测fp所指定的文件是否遇到文件结束符EOF,遇到结束符时返回0,否则返回非0值
fscanf()
用法 int fscanf(FILE *fp,char *format,address,...);
从fp指定的文件中按format规定的格式输入数据,并把输入的数据依次存入对应的地址address中,返回输入数据个数(通常不需要引用该函数的返回值)
fgetc()
用法 int fgetc(FILE *fp);
从fp指定的文件中读取下一个字符,成功时返回读取的字符,出错或至文件结束时返回EOF
fgets()
用法 char *fgets(char *buf,int n,FILE *fp);
从fp指定的文件中读取一个长度为n-1的字符串,存入起始地址为buf的内存空间中,成功时返回buf指定的字符串,出错或遇到文件结束时返回NULL
fprintf()
用法 int fprintf(FILE *fp,char *format,argument,...);
将格式串format中的内容原样输出到所指定的文件中,每遇到一个%,就按规定的格式依次输出一个表达式argument的值到所fp指定的文件中,返回成功输出的项数,出错时返回EOF
fputc()
用法 int fputc(int c,FILE *fp);
输出一个字符到fp指定的文件中,成功时返回所写的字符,出错时返回EOF(通常不需要引用该函数的返回值)
fputs()
用法 int fputs(char *str,FILE *fp);
把字符串str输出到fp指定的文件中,返回最后输出的字符,出错时返回EOF(通常不需要引用该函数的返回值)
fread()
用法 int fread(viod *buf,int size,int n,FILE *fp);
从fp文件中读取长度为size的n个数据项,放到buf指向的内存区,成功时返回所读的数据项个数,遇到文件结束或出错时返回0
fwrite()
用法 int fwrite(viod *buf,int size,int n,FILE *fp);
将buf指向的内存区中长度为size的n个数据写入fp文件中,返回写到fp文件中的数据项个数
ftell()
用法 long ftell(FILE *fp);
返回fp文件中当前文件指针位置相对于文件起始位置的偏移量(单位是字节),出错时返回-1L
rewind()
用法 void rewind(FILE *fp);
把fp文件的位置指针从新定位到文件开始位置
fseek()
用法 int fseek(FILE *fp,long offset,int origin);
将fp文件的位置指针移到新的位置,新位置与origin所指的位置距离为offset字节,origin的取值为
SEEK_SET(0) 代表文件的开始位置
SEEK_CUR(1) 代表文件的当前位置
SEEK_END(2) 代表文件尾
rename()
用法 int rename(char *oldname,char *newname);
将oldname指定的文件重命名为newname
remove()
用法 int remove(char *filename);
删除filename指定的文件
·文件目录管理函数 dir.h
chdir()
用法 int chdir(const char *path);
改变当前的工作目录为path指定的目录,如果成功函数返回0,否则为-1
findfirst()
用法 int findfirst(char *pathname, struct ffblk *ffblk,int attrib);
搜索符合条件的文件或目录,搜寻结果必须符合pathname指定的通配符字符串条件和attrib指定的文件属性条件.如果搜寻成功,函数返回一个搜寻句柄,并将搜寻结果的有关信息通过结构ffblk返回,如果搜寻失败,函数返回-1
findnext()
用法 int findnext(struct ffblk *ffblk);
搜索下一个符合条件的文件或目录,搜寻结果必须符合最近的一次findfirst调用时的搜寻条件,如果搜寻成功,函数返回一个句柄,并将搜寻结果的有关信息通过结构ffblk返回,如果搜寻失败,函数返回-1
fnmerge()
用法 void fnmerge (char *path,const char *drive,const char *dir,const char *name,const char *ext);
以指定的驱动器号drive,路径dir,文件名name,文件扩展名ext来建立新文件名path
fnsplit()
用法 int fnsplit(const char *path,char *drive,char *dir,char *name,char *ext);
从文件名path中获取驱动器号drive,路径dir,文件名name,文件扩展名ext
getcurdir()
用法 int getcurdir(int drive,char *direc);
取指定驱动器drive的当前目录,存入direc中
getcwd()
用法 char *getcwd(char *buf,int n);
取当前工作目录的全路径,并存入buf中,参数n为buf的大小,如果成功,函数返回指向buf的指针,否则返回NULL
getdisk()
用法 int getdisk(void);
取当前磁盘驱动器号并返回(其中1为A驱, 3为C驱,以此类推)
mkdir()
用法 int mkdir(char *pathname);
建立一个名为pathname的目录,如果成功 函数返回0,否则返回-1
rmdir()
用法 int rmdir(char *pathname);
删除一个名为pathname的目录,如果成功 函数返回0,否则返回-1
setdisk()
用法 int setdisk(int drive);
根据drive来设置当前磁盘驱动器(其中1为A驱, 3为C驱,以此类推)
·进程控制函数 process.h
system()
用法 int system(char *command);
执行command指定的DOS命令
exit()
用法 void exit(int status);
以status指定的退出码中止程序
execl()
用法 int execl(char *pathname,char *arg0,...,NULL);
调用并执行新的子进程,pathname为要执行的文件 arg0 arg1等为执行参数
spawnl()
用法 int spawnl(int mode,char *pathname,char *arg0,...,NULL);
创建并执行新的进程,mode为执行方式 取值为_P_WAIT _P_NOWAIT或_P_NOWAITO pathname为要执行的文件,arg0 arg1等为执行参数
·时间日期函数 time.h
asctime()
用法 char *asctime(const struct tm *tblock);
将tm结构变量tblock中保存的日期和时间信息转换为ASCII码形式,并返回该形式的字符串
clock()
用法 clock_t clock(void);
计算当前进程使用的处理器时间并返回
ctime()
用法 char *ctime(const time_t *time);
将time_t结构变量time中保存的日期和时间信息转换为ASCII码形式,并返回该形式的字符串
time()
用法 time_t time(time_t *timer);
将系统时间保存在time中,并返回该系统时间
difftime()
用法 double difftime(time_t time2,time_t time1);
计算两个时刻之间的时间差并返回,其中time1为起始时间,time2为终止时间
stime()
用法 int stime(time_t *tp);
设置当前时间为tp表达的时间
函数由函数头和函数体组成,通俗地讲函数头的格式为type 函数名(参数1,……) 注意括号中可以无参数,也可以有参数,函数名前的type为函数的返回类型,“)”后千万不能加“;”,因为它不是语句,而是函数声明。
接着是由一对“{}”符号括起来的函数体,其中函数体由变量声明部分和执行部分组成,声明部分就是对要用到的变量进行说明,因为C语言变量使用前必须要先声明,执行部分就是程序要执行的语句。详细说明建议你看谭浩强教授主编的“C语言程序设计”。
用句不科学地说法来说明他们的区别就是:C语言中以“;”结束的就是语句,带括号是函数,当然这种观点不科学,但是,万一你一时难于理解的话,那你不防这样去理解,等你以后熟悉C语言了,就不会这样了。
你只要看到是关键字(保留字)的就可以认定它不是一个函数了。
switch就是一个关键字
函数除了主函数main()还有系统已定义的函数也称库函数,如scanf(),输入函数,printf()输出函数(我们使用时其实就是对库函数的调用.除此之外就是用户自定义的函数。
形如:
类型
函数名(参数1,参数2)
{
语句序列;
return
类型;
}
关于函数的介绍你可以看一下有关方面的书藉。
至于GOTO语句
它的使用是先标记一个地方,下边再用goto回到标记处。以实现循环。
标记和goto只要在同一个函数中就行了,因switch不是函数,所以是可以内外放的。