C语言常用语句总结C语言常用语句总结一:常用函数1、putchar函数:putchar函数(字符输出函数):向终端输出一个字符。
一般形式为:putchar(c) // 输出字符变量c的值。
== printf(“%c”,c) 2、getchar函数getchar函数(字符输入函数):从终端输入一个字符。
getchar函数没有参数,一般形式为:c=getchar() //将输入的字符赋值给c3、printf函数printf函数(格式输入函数):向终端输出若干个任意类型的数据。
printf的一般格式为:printf(“格式控制”,对应变量名) // 例如:printf (”%d,%c\n”,i,c)4、scanf函数scanf(格式输入函数):从终端输入若干个任意类型的数据。
一般形式为:scanf(“格式控制”,&变量名)二:基本语句(除if语句外,switch和三种循环语句都需要{大括号}的支持)(1)条件语句if和switch1、if语句:*********************if(表达式)语句1;语句2;// if下的各独立语句用分号分隔。
*********************if(表达式)语句1;else语句2;*********************if(表达式1)语句1;else if(表达式2) // 每一个if与他最近的一个else对应。
语句2;....else if(表达式n)语句n;else语句n+1;*********************If语句的嵌套if(表达式)if(表达式)语句1else语句2elseif(表达式)语句3else语句42、switch语句switch (表达式){case 常量表达式1:语句1case常量表达式2:语句2 // 每一个case表达式后都需要加上break跳出,否则 case常量表达式n: 将依次执行下去。
语句ndefault : // 大括号划分switch内语句语句n+1}(2)三种循环语句1、 while语句while语句用来实现“当型”循环结构。
一般形式如下:while(表达式) // 当表达式非0值时(逻辑表达式),执行while语句中的内嵌套语句,{ 先判断后执行。
语句1; // 分号间隔每一个独立语句。
语句2;// 大括号划分出while内语句。
}2、do… while 语句do… while 语句先执行循环体,然后判断循环条件是否成立。
一般形式为:do{循环体语句1;// 分号间隔每一个独立语句。
循环体语句2;// 大括号划分do内语句。
}while(表达式)// 当表达式非0值时(逻辑表达式),执行while语句中的内嵌套语句,先判断后执行。
3、for语句for语句不仅可以用于循环次数已经确定的循环,而且可以用于循环次数不确定的循环而只给出循环结束条件。
for(循环变量赋初值;循环终止条件;循环变量增值){语句1; // 分号间隔每一个独立语句。
语句2;// 大括号划分for内语句。
}它的执行过程如下:(1)、先求解表达式1。
(2)、求解表达式2,若其值为真(值非0),则执行for循环中指定的内嵌语句,然后执行下面的(3)。
若表达式2为假(值为0),则结束循环,转到第(5)步。
(3)、求解表达式3。
(4)、转回上面第(2)步继续执行。
(5)、循环结束,执行for语句下面的一个语句。
(3)其他语句:1、break语句break语句可以是流程跳出switch结构,继续执行switch下面的语句。
break语句也可以用来从循环体内跳出循环体,提前结束循环,接着执行循环体下面的语句。
break语句的一般形式为:break;说明:break语句不能用于循环语句和switch语句之外的任何其他语句。
2、continue语句在循环体中遇到continue语句,程序将跳过continue语句后面尚未执行的语句,开始下一次循环,即只结束本次循环的执行,并不终止整个循环的执行。
三:其他语句1.唯一的三元运算符:条件运算符表达式:判断表达式1?表达式2:表达式3 // 例如:a>b?a:b(条件成立取表达式2的值,否则取表达式3的2.宏定义:#define 标识符字符串 // 例如:#define N 300 定义N为3003.结构体:一般形式如下:struct 结构体名{类型名1 结构成员名1;类型名2 结构成员名2;…类型名n 结构成员名n;}s; // 属于该结构体的变量名(类似于 int a 中a的角色);引用结构体变量中的数据:(对结构体成员变量的引用)1)结构体变量名.成员名 // s.成员名1 (引用后即可当普通变量操作)2)指针变量名->成员名3)(*指针变量名).成员名4.共同体一般形式如下:union 共用体标识名{类型名1 共用体成员名1;类型名2 共用体成员名2;。
类型名n 共用体成员名n;}共用体变量中成员的引用:共用体变量名.成员名指针变量名->成员名(*指针变量名).成员名三:文件的操作:文件指针实际上是批向一个结构体类型的指针。
(1)文件的打开,关闭:FILE *指针变量名; // 定义文件指针fopen(“文件名”,“文件使用方式”); // (打开文件)例如:fopen(“c:\\file_a”,”r”);fclose(文件指针) // (关闭文件)例如:fclose(fpout);判断文件是否能打开,需写入:FILE * fp;if((fp=fopen("文件名","打开方式"))==NULL) // 打开文件出错的话{printf("cannot open file\n");exit(0); // exit(1)出错退出。
exit(0) 正常退出}文件打开方式说明:1. r ,凡用“r”打开一个文件时,该文件必须已经存在,且只能从该文件读出2. w,用“w”打开的文件只能向该文件写入。
若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。
3. a,要向一个已存在的文件追加新的信息,只能用“a ”方式打开文件。
但此时该文件必须是存在的,否则将会出错。
4. +,与上面的字符串组合,以读和写的方式打开文件(2).文件的读写读写数据将通过调用标准输入输出函数来完成。
这些函数主要包括:1).fgetc()和getc():从制定文件中一次读取一个字符fputc()和putc():一次输出一个字符到指定文件2).fgets():从指定文件中一次读取一个字符串fputs():一次输出一个字符串到指定文件3).fread():从指定文件中一次读取一个数据块fwrite():一次输出一个数据块到指定文件4).fscanf():从指定文件中按格式读取数据fprintf():按指定格式将数据输出到指定文件中详细介绍:1.读写字符fgetc和fputc:字符读写函数是以字符(字节)为单位的读写函数。
每次可从文件读出或向文件写入一个字符。
形式:字符变量=fgetc(文件指针)例如:ch=fgetc(fp); // 从打开的文件fp中读取一个字符并送入ch中。
形式: fputc(变量名,文件指针);例如:fputc(a,fp) // 把变量a的值写入fp所指向的文件中。
判断是否出错,需写入:while((ch=fgetc(fp))!=EOF) // 当文件内容没有执行错误时,顺利执行下一句2.读写字符串fgets和fouts:从指定的文件中读写一个字符串到字符数组中。
形式: fgets(字符数组名,n,文件指针)其中的n是一个正整数。
表示从文件中读出的字符串不超过 n-1个字符。
在读入的最后一个字符后加上串结束标志'\0'。
例如:fgets(str,n,fp) //从fp所指的文件中读出n-1个字符送入字符数组str中。
形式: fputs(字符串,文件指针);其中字符串可以是字符串常量,也可以是字符数组名,或指针变量。
例如:fputs(“abcd“,fp) // 其意义是把字符串“abcd”写入fp所指的文件之中。
3.数据块读写函数fread和frite:用来读写一组数据。
读数据块函数调用的一般形式为: fread(buffer,size,count,fp);写数据块函数调用的一般形式为: fwrite(buffer,size,count,fp);其中:buffer 是一个指针,在fread函数中,它表示存放输入数据的首地址。
在fwrite函数中,它表示存放输出数据的首地址。
size 表示数据块的字节数。
count 表示要读写的数据块块数。
fp 表示文件指针。
例如:fread(fa,4,5,*fp);其意义是从fp所指的文件中,每次读4个字节(一个实数)送入实数组fa中,连续读5次,即读5个实数到fa中。
fread(&stu[i],sizeof(struct 结构体名),1,fp);其意义是从fp所指的文件中,每次读结构体的一个变量名送入数组stu[i]中,连续读1次,即读1个结构体到stu[i]中。
3.格式化读写函数fscanf和fprintf: 函数的读写对象不是键盘和显示器,而是文件.函数的调用格式为:fscanf(文件指针,格式字符串,输入表列);// fscanf(fp,"%d%s",&i,s);fprintf(文件指针,格式字符串,输出表列); // fprintf(fp,"%d%c",j,ch);(3).文件定位使“读写位置指针”直接指向指定的读写位置。
函数包括:fseek():可移动位置指针到指定位置上ftell():可获得当前位置指针的位置rewind():“反绕”函数,可使位置指针回到文件的开头详细介绍:1.fseek()函数:一般形式:fseek(fp, offset, origin)fp是文件指针,offset是以字节为单位的位移量,为长整型数;origin是起始点,用以指定位移量是以哪个位置为基准的,起始点既可用标识符来表示,也可用数字来代表。
标识符数字代表的起始点SEEK_SET 0 文件开始SEEK_END 2 文件末尾SEEK_CUR 1 文件当前位置例如:fp已指向一个二进制文件,能使位置指针从文件的开头向文件尾部移动20个字节的fseek()函数的调用形式如下:fseek(fp, 20L, SEEK_SET)例如:fp已指向一个二进制文件,能使位置指针从文件尾部向文件开头移动10个sizeof(int)的函数的调用形式如下:fseek(fp, -10L*sizeof(int), SEEK_END)对于文本文件,位移量必须为0。