版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
顺序结构程序设计目
录2.1
初始C程序2.2标识符2.1.1C语言的字符集2.1.2C语言的标识符2.3
C语言的数据类型2.3.1整型2.3.2字符型2.3.3浮点型2.3.4常量2.3.5变量2.3.6常变量const目
录2.4运算符与表达式2.4.1
算术运算符2.4.2
位运算符2.4.3赋值运算符2.4.4逗号运算符2.4.5求字节长度运算符2.4.6类型转换2.5
数据的输入和输出2.5.1格式输出函数printf()2.5.2格式输入函数scanf()2.5.3字符输入输出函数putchar()和getchar()2.6基本C语句2.1初始C程序【例2-1】Tom同学的数学和英语成绩分别为76分和86分,编写程序求Tom同学的总成绩。程序如下:#include<stdio.h>#include<stdlib.h>intmain(){intMath,English,Sum;
/*定义3个整型变量*/Math=76;English=86;Sum=Math+English;printf("Tom的总分:%d",Sum); //使用函数printf()输出总分return0;}2.1初始C程序(1)预处理命令。预处理命令在所有函数的外面,通常在源文件的最前面。预处理命令以#开头,每条命令独占一行,结尾没有分号。(2)函数main()函数称为主函数,它是所有C程序执行的入口。一个C程序可以包含很多个函数,但只能有一个main()函数。(3)注释注释有两种形式://......和/*......*/。2.1初始C程序C程序的书写还有一些约定成俗的规范,如:(1)代码的缩进和对齐。同一级别的代码要对齐,不同级别的代码要有缩进。缩进一般通过tab键实现。(2)()和{}要一次性成对书写,以免遗漏。(3){和}一般各占一行且要对齐。(4)不同模块之间添加空行隔离,这样程序结构更清晰。(5)关键字后要留空格,如intMath、if(x>5)等。(6)函数名后紧跟(),中间不要留空格,如printf()。(7)一条C语句占一行,尽量不要把多条C语句放在同一行。(8)适当的注释有助于程序的理解,但也不可过多。2.2.1C语言的字符集C语言中允许使用的所有符号称为C语言的字符集,其范围是ASCII字符集,具体包括以下几类:(1)大小写英文字母:A~Z,a~z。(2)数字:0~9。(3)键盘符号:键盘上除英文字母和数字以外的其他符号。(4)转义字符:由反斜线(\)加若干字符组成,作用是将反斜线后面的字符转换成另外的含义,如“\n”代表的含义就不再是字母n,而是换行。表2.1C语言中的转义字符2.2.2C语言的标识符标识符就是一个名字,用来标识变量、常量和函数等。C语言的标识符只能由字母、数字和下划线组成,且第一个字符必须为字母或下划线。特别注意:C语言的标识符严格区分大小写,如Math和math就是两个不同的标识符。C语言把标识符分为三类:关键字预定义标识符用户自定义标识符1.关键字关键字是C语言中有特殊含义的标识符,也叫保留字。2.
预定义标识符预定义标识符是指程序预处理阶段使用的关键字。预定义标识符包括预处理命令、系统类库名、系统常量名、系统函数名等。预处理命令一般在源文件的最前面,使用时都以#开头,每条命令独占一行,结尾不加分号。表2.3预处理命令3.
用户自定义标识符用户自定义标识符,使用时需要注意以下几点:(1)组成字符要合法:英文字母、数字、下划线,且第一个字符只能是字母或下划线。(2)不能是关键字。(3)预定义标识符可以作为用户标识符使用,只是这样会失去系统规定的原意。(4)标识符长度没有统一要求,由编译系统决定。如果长度超过系统规定长度,则超出长度的字符无效。(5)命名时尽量“顾名思义”,即看见标识符名就可大体明白它代表的含义。(6)时刻注意,C语言区分大小写,所以SUM和Sum是不同的标识符。average、student、area_1、_123、IF、Int123、if、Sum$、—1232.3C语言的数据类型2.3.1整型
表2.4整型的存储空间及数值范围特别说明:int类型在不同系统中所占的字节数不同,在64位机中一般占4B。可以使用sizeof(int)查看该数据类型在当前机器上所占的存储空间。2.3.2字符型字符型数据只有一种:char类型,用来存储ASCII码表中的字符。char类型占1B的存储空间,能表示-128~127之间的整数。因为在内存中存储的都是用字符的ASCII值,而字符的ASCII值是一个整数,所以char类型也可以认为是一种整型。2.3.3浮点型表2.5浮点型数据的存储空间及数值范围特别说明:(1)浮点型数据在计算机内用科学计数法表示,数值范围由指数的位数决定。(2)有效数字也称为精度,指能准确显示的数字位数,比如1.23456的有效数字就是6位。
有效数字是由尾数的位数决定的。(3)longdouble类型所占的字节数与机器有关,不一定是16B,使用时可通过sizeof(long
double)查看。(4)浮点型数的存储和计算都是近似值,所以浮点型数一般不判断“相等”,而是判断是否
接近。2.3.4常量常量就是程序运行过程中值保持不变的量。常量的存储空间是在编译的时候由系统分配的。整型常量浮点型常量字符常量字符串常量符号常量1.整型常量表2.6整型数据的四种表示表2.7不同整型常量的后缀表示特别说明:(1)后缀u只针对十进制数;二进制、八进制和十六进制本身就是无符号数,不需要加后缀u。(2)后缀u可以与其他后缀相结合表示各种无符号整型,如无符号长整型的后缀为ul或UL;无符号长长整型的后缀为ull或ULL。2.
浮点型常量浮点型数据只能用十进制表示,可以是十进制小数形式,也可以是指数形式,即科学计数法。当浮点型常量用指数形式表示时,整个数值由尾数、字母e(或E)和指数三部分组成,如2.34E-5,2.34E5(或2.34E+5)。表2.8浮点型常量的表示特别说明:(1)浮点型常量只有十进制一种形式,所以无前缀。(2)浮点型常量用指数形式表示时,字母e(或E)的前后都要有数字,且字母和数字之间不能有空格;e后面的数字(即指数)必须是整数。E5,3.14.15E,E0.53.
字符常量字符常量是用一对单引号括起来的普通字符(只能一个)或转义字符。每个字符常量在内存中只占用1个字节的存储空间。'a'、'\n'、'\101'、'\x41'、'7'、'$'、'\''、'\\''abc'、"a"4.
字符串常量字符串常量是用一对双引号括起来的一串字符。字符串常量中的若干字符在内存中占用一块连续的存储空间,并且以'\0'作为字符串的结束标志。所以"a"虽然只包含一个字符,但在内存中却占2个字节的存储空间,字符串结束标志'\0'要占一个。"a","Ilikecat","12345678","ab\123",""5.
符号常量符号常量就是用一个标识符来代表一个常量。符号常量在使用之前必须要先定义,其定义形式为:#define标识符常量值【例2-2】圆的半径为3厘米,编写程序求圆的面积和周长。#include<stdio.h>#include<stdlib.h>#definePI3.1415
intmain(){intR=3;floatArea,Cir;Area=PI*R*R;Cir=2*PI*R;printf("theAreaoftheCircle:%f\n",Area);printf("Thecircumferenceofthecircle:%f\n",Cir);return0;}2.3.5变量程序运行过程中,值可以改变的量称为变量,其存储空间是在程序运行过程中由系统分配的。变量在使用之前必须先定义,定义格式如下:类型说明符变量名表如:intx; shorty; charch; floata,b,c; longdoubles; 2.3.5变量在程序中使用变量称为变量的引用。变量使用前应该先赋值,可以通过赋值语句,如“p=(a+b+c)/2;”;也可以在变量定义的同时给它赋值,这称为变量的初始化。【例2-3】求三角形的面积。#include<stdio.h>#include<stdlib.h>#include<math.h> //包含sqrt()等各种数学函数的头文件intmain(){inta=3,b=4,c=5;floatp,Area;p=(a+b+c)/2;Area=sqrt(p*(p-a)*(p-b)*(p-c));printf("theareaofthetriangleis:%f",Area);return0;} 2.3.5变量使用注意事项特别注意:变量赋值时,要类型相符,且不能超过该类型所能表达的数值范围。赋值超出类型能表示的数值范围称为溢出。赋值时,如果等号左右两边类型不一致,右边表达式的类型需要转换为左边变量的类型。
【例2-4】赋值时类型不相符。#include<stdio.h>#include<stdlib.h>intmain(){inta,b,c,cir;a=3;b=4;c=5.5; //将浮点型值赋给整型变量cir=a+b+c;printf("thecircumferenceis:%d",cir);return0;}【例2-5】赋值时超出变量能表达的数值范围。#include<stdio.h>#include<stdlib.h>intmain(){shortinta,b;a=32767;b=a+1;printf("%hd",b); //hd表示输出短整型return0;}2.3.6常变量const常变量是一种特殊的变量,它的值不能被改变,其定义形式如下:const类型说明符变量名表;constintx=100;常变量和普通常量也不一样,虽然它们的值都不能改变,但是常变量有名字,而普通变量没有名字。常变量和符号常量的区别:(1)定义的方法和位置不同:符号常量使用#define关键字定义在所有函数的外面,且结尾没有分号。而常变量使用const定义,可以定义在函数外,也可以定义在函数内,必须以分号结尾。(2)符号常量不分配存储空间,在预编译时进行字符替换。而常变量占用存储空间,像普通变量一样被程序使用。2.4运算符与表达式表2.9C语言的运算符2.4运算符与表达式对于任意一个运算符,要重点关注以下四点:(1)操作数的数量(2)操作数的类型(3)优先级(4)结合性除单目运算符、条件运算符、以及赋值运算符是右结合性,其他都是左结合性。2.4.1算术运算符算术运算符包括+(加或正)、-(减或负)、*(乘)、/(除)、%(求余,也称模运算)、++(自加)、--(自减)共七种。除+(正)、-(负)、++和--是单目运算符之外,其他都是双目运算符。++和--运算符++和--运算符的操作数只能是变量,不能是常量或表达式,如3++,--(y+3)当++和--在变量前面时,变量i先自增(自减)1,然后再使用变化后的i值。当++和--在变量后面时,先使用变量i的值,然后i再自增(自减)1。当++和--单独使用时,在变量前或者在变量后没有区别。假设i=5,则++i和i++都使i的值变为6。当++和--作为表达式的一部分时,在前和在后就完全不同了。例如:intx=5;
intx=5;y=x++;
y=++x;2.4.1算术运算符使用注意事项C语言使用算术运算符的规则和数学中类似,但也有些不同,以下几点要特别注意:(1)由算术运算符和操作数组合形成算术表达式时,运算符不能省略。如a乘以b,必须表示成a*b。(2)C语言中的/(除)有整数除和浮点型除两种。当两个操作数都是整数时,运算结果也是整数;两个操作数中有一个是浮点型数,则结果是浮点型。如7/3=2,而7.0/3=2.5。(3)%(求余)运算的操作数只能是整数,结果的符号一般与被除数的符号一致。(4)++和--的操作数只能是变量,不能是常量和表达式。(5)如果运算符两侧的操作数类型不一致,则需要先进行类型转换再进行运算,结果为转换后的数据类型。默认的是数值范围小、精度低的类型转换成数值范围大、精度高的类型,如字符型转换为整型,整型转换为浮点型等。(6)当表达式中包含多个算术运算符时,注意运算符的优先级和结合性。2.4.2位运算符C语言提供了六种位运算符:&(位与)、|(位或)、~(位非)、^(位异或)、<<(位左移)、>>(位右移)。位运算的操作数可以是常量、变量和表达式,但必须是整型,如x^y、a>>(b-1)。由位运算符和操作数组成的表达式称为位表达式。(1)&(位与):&(位与)运算是对两个操作数的二进制按位相与。如:8&12等价于
00001000&00001100=00001000=8
(2)|(位或):|(位或)运算是对两个操作数的二进制按位相或。如:8|12等价于 00001000|00001100=00001100=12(3)~(位非):~(位非)运算是位操作符中唯一的一个单目运算符,它是对操作数的二进制按位取反(包括符号位),1的反为0,0的反是1。如:~8
等价于
~00001000=11110111=-9
2.4.2位运算符(4)^(位异或):^(位异或)运算是对两个操作数的二进制按位异或。8^12等价于 00001000^00001100=00000100=4
(5)<<(位左移):<<(位左移)运算是将左边操作数的二进制位全部向左移动右边操作数指定的位数,高位丢弃(包括符号位),低位补0。对于带符号的数,左移可能会因符号位丢弃而改变正负。8<<2等价于 00001000<<2=00100000=32 -9<<4等价于 11110111<<4=01110000=112
(6)>>(位右移):>>(位右移)运算是将左边操作数的二进制位全部(包括符号位)向右移动右边操作数指定的位数,低位丢弃。如果是正数右移,高位补0(包括最高位符号位);如果是负数右移,除最高位符号位外,其它位补0;符号位补0还是补1与编译系统有关,大多数编译系统补1。8>>2等价于 00001000>>2=00000010=2 -9>>2等价于 11110111>>2=10111101=-3 //CodeBlocks中负数右移时,符号位补12.4.3赋值运算符赋值运算符是程序中使用最多的运算符,它将一个常量、变量、或表达式的值赋给另一个变量。由赋值运算符形成的表达式称为赋值表达式,它的基本形式如下:变量名=表达式x=3y=y+1
z=y=5 x=y+3复合赋值运算符:是将赋值运算符与其他运算符合二为一。
与算术运算符结合:+=、-=、*=、/=、%=
与位运算符结合:<<=、>>=、&=、^=、|=x+=3 等价于 x=x+3x*=x+3 等价于 x=x*(x+3)x%=y*3 等价于 x=x%(y*3)a<<=2 等价于 a=a<<2a&=b 等价于 a=a&b y+1=32.4.4逗号运算符逗号运算符在C语言所有运算符中的优先级别最低,它可以将多个表达式联接起来形成逗号表达式,其基本形式如下:表达式1,表达式2,表达式3,......,表达式n逗号表达式的运算规则是从左往右逐个计算各个表达式,整个逗号表达式的值为最后一个表达式:表达式n的值。如:3+4,5+7
//整个表达式的值为12x=10,x*3
//整体是逗号表达式,整个表达式的值为30y=(x=10,x*3,x+5)
//整体是赋值表达式,等号右边是逗号表达式,y的值为152.4.5求字节长度运算符同一种数据类型在不同的编译系统中分配的存储空间可能不同,可以使用sizeof运算符明确数据类型在当前编译系统中占多大的存储空间,使用形式为:sizeof(操作数) 或 sizeof操作数sizeof运算符是单目运算符,它的操作数可以是常量、变量、表达式和数据类型。如:sizeof(int)
//64位机结果为4sizeof(3)
//等价于sizeof(int),64位机结果为4sizeof(i)
//假设i为整型,等价于sizeof(int),64位机结果为4sizeof(i+3)
//假设i为整型,等价于sizeof(int),64位机结果为4sizeofi+3
//假设i为整型,sizeofi占用的存储空间为4,再加3,结果为72.4.6类型转换1.自动类型转换自动类型转换是在编译时自动进行的,也称为隐式类型转换,其基本原则是由低级向高级转换。2.强制类型转换当高级类型转换为低级类型时,需要使用强制类型转换,其一般形式如下:(类型说明符)表达式(int)x (float)(15%2) (double)y (double)(a+b) (double)a+b 图2.5自动类型转换2.5.1格式输出函数printf()printf()函数是C语言中的格式化输出函数,用于向标准输出设备(一般是显示器),按用户指定的格式输出若干数据,一般使用形式为:printf("格式控制字符串",输出项列表)输出项列表可以是常量、变量或表达式,多个输出项之间用逗号间隔。格式控制字符串由格式声明符和普通字符两种组成。普通字符原样输出,常用来表示说明或提示信息,以使输出更清晰。格式声明符是printf()函数中最复杂的部分,由“%”和格式字符组成,控制输出数据的类型、形式、长度、小数位数等。一个格式声明符对应一个输出项,基本格式为:%[标志][最小宽度][.精度][类型长度]格式字符说明:除%和格式字符外,其他格式控制字段均可省略。1.格式字符格式字符用于控制输出数据的类型。intx1=-200;
unsignedintx2=200;
printf("1:格式字符d:%d\n",x1);
printf("2:格式字符u:%u\n",x2);2.标志字段标志字段用于控制输出数据的对齐方式和填充字符。intx1=200;printf("1:标志字符+:%+d\n",x1);
//正数前面强制输出+printf("3:标志字符-:%-6d\n",x1);
//宽度多出,左对齐,右补空格printf("4:标志字符0:%06d\n",x1);
//宽度多出,右对齐,左补0printf("5:标志字符空格:%d\n",x1);
//正数前面输出一个空格printf("7:标志字符#:%#x\n",x1);
//十六进制数输出前导0x
3.最小宽度字段
最小宽度字段用于控制输出数据占据的最小字符宽度。intx1=200;printf("1:标志字符+:%+d\n",x1);
//正数前面强制输出+printf("2:宽度字符:%6d\n",x1);
//宽度多出,默认右对齐,左补空格printf("3:标志字符-:%-6d\n",x1);
//宽度多出,左对齐,右补空格printf("4:标志字符0:%06d\n",x1);
//宽度多出,右对齐,左补0printf("12:宽度字符:%2d\n",x1);
//宽度不够,数据原样输出4.精度字段
精度字段用于指定输出数据的精度,使用时前面需加小数点‘.’。doubley1=66.1230000;printf("9:对比上面:%.0f\n",y1);
//精度为0,不输出小数部分,包括小数点printf("15:精度字符控制f:%.2f\n",y1);
//精度控制浮点型的小数位数printf("16:精度字符控制g:%.3g\n",y1);
//精度配合g说明符限制有效数字位数printf("17:精度字符控制s:%.1s\n","CProgram");
//精度控制截取字符个数printf("18:宽度精度结合使用:%5.1s\n","CProgram");【例2-8】标志字符、最小宽度字符和精度字符使用样例。intmain(){intx1=200;doubley1=66.1230000;printf("1:标志字符+:%+d\n",x1);
//正数前面强制输出+printf("2:宽度字符:%6d\n",x1);
//宽度多出,默认右对齐,左补空格printf("3:标志字符-:%-6d\n",x1);
//宽度多出,左对齐,右补空格printf("4:标志字符0:%06d\n",x1);
//宽度多出,右对齐,左补0printf("5:标志字符空格:%d\n",x1);
//正数前面输出一个空格printf("6:标志字符#:%#o\n",x1);
//八进制数输出前导0printf("7:标志字符#:%#x\n",x1);
//十六进制数输出前导0xprintf("8:标志字符#:%#.0f\n",y1);
//精度为0,依然输出小数点printf("9:对比上面:%.0f\n",y1);
//精度为0,不输出小数部分,包括小数点printf("10:标志字符#:%#g\n",y1);
//#使尾部0保留printf("11:对比上面:%g\n",y1);
//默认g说明符尾部0删除printf("12:宽度字符:%2d\n",x1);
//宽度不够,数据原样输出printf("13:宽度字符:%4f\n",y1);
//宽度不够,数据原样输出printf("14:精度字符控制整型:%.6d\n",x1);//精度控制整型,前面以0补足printf("15:精度字符控制f:%.2f\n",y1);
//精度控制浮点型的小数位数printf("16:精度字符控制g:%.3g\n",y1);
//精度配合g说明符限制有效数字位数printf("17:精度字符控制s:%.1s\n","CProgram");
//精度控制截取字符个数printf("18:宽度精度结合使用:%5.1s\n","CProgram");return0;}5.类型长度字段类型长度字段经常用来配合格式字符表示更丰富的数据类型。printf("%hd\n",x);
//以十进制短整型形式输出变量xprintf("%ld\n",x);
//以十进制长整型形式输出变量xprintf("%lld\n",x);
//以十进制长长整型形式输出变量x2.5.1printf()函数使用注意事项(1)格式字符与数据类型尽量一致,否则可能导致数据输出错误。假设有如下面程序段:intx=32768,y=-5;printf("x=%hd\n",x); printf("y=%u\n",y); (2)printf()函数参数值的计算顺序是自右向左,如:printf("%d,%d",x,x++);假设x=5,则输出结果为6,5。(3)格式控制字符串中可以包含多组格式声明符,多个格式声明符中间可以用普通字符做间隔,如:printf("%ld,%10.2f",x,y)用逗号隔开。(4)除格式声明符以外的其他字符都是普通字符,要原样输出。注意普通字符不能出现在格式声明符中,如:printf("x=%hd\n",x),“x=”是普通字符,不能出现在%和hd中间。(5)printf()函数使用时要包含头文件#include<stdio.h>。2.5.2格式输入函数scanf()scanf()函数用于从标准输入设备(一般是键盘)获得用户输入,并按用户指定的格式把数据送入变量所分配的内存空间中。scanf()函数的一般使用形式为:scanf("格式控制字符串",输入项列表)输入项列表是接收读入数据的变量内存地址,多个地址之间用逗号间隔。C语言中取地址符号为“&”,如&a。格式控制字符串也由格式声明符和普通字符两种组成。普通字符需要用户在键盘上原样输入,这会增加用户输入负担,所以一般不使用。格式声明符控制输入数据的格式,与printf()函数类似,也由“%”和格式字符组成。一个格式声明符对应一个输入项。格式声明符的基本格式为:%[*][宽度W][类型长度]格式字符说明:除%和格式字符外,其他格式控制字段均可省略。1.
格式字符和类型长度字符格式字符用于控制输入数据的类型,而类型长度字符和格式字符配合,可以表示更丰富的类型。【例2-9】一个使用scanf()函数的简单程序:求三角形的面积,三条边的值从键盘输入。#include<stdio.h>#include<stdlib.h>#include<math.h> //包含sqrt()等各种数学函数的头文件intmain(){inta,b,c;floatp,Area;scanf("%d%d%d",&a,&b,&c); //注意a,b,c的输入格式p=(a+b+c)/2;Area=sqrt(p*(p-a)*(p-b)*(p-c));printf("theareaofthetriangleis:%f",Area);return0;}2.
虚读和宽度*表示虚读,即本输入项在读入数据后不赋给下一变量,虚读*可以预防输入数据间隔与要求不一致而导致的错误。如:scanf("%d%*c%d",&x,&y);假设输入数据3,4,3赋给变量x,4赋给变量y,中间的逗号“,”被虚读,未赋给任何变量。宽度w是一个整数,指定输入数据所占宽度(列宽),系统自动截取用户所规定的位数。如:scanf("%3d%d",&a,&b);//输入为1234,则最终a的值为123(截取3位),b的值为4scanf("%5s",name)
//输入为“ZhangLin”,则串name的值为“Zhang”2.5.2scanf()函数使用注意事项(1)格式字符和变量类型、变量数量要一致,以免产生错误。(2)使用scanf()函数同时为多个变量赋值时,若格式控制串中没有普通字符作间隔,则可按空格键,tab键或回车键作为输入数据的间隔。空格、tab和回车也称为空白字符。如:scanf("%d%d%d",&a,&b,&c);(3)scanf()函数格式控制串中的普通字符必须原样输入,如:scanf("%d,%d,%d",&a,&b,&c);
//对用的输入数据之间也必须用逗号做间隔,如3,4,5scanf("a=%d",&a)
//输入必须类似a=3(4)float和double类型在print()函数中的格式控制符一样,都是“%f”;但是在scanf()函数中却不同,分别是“%f”和“%lf”,绝对不能用错,否则会导致数据错误。(5)所有字符(包括空白字符和%)都是char类型的合法输入,如:scanf("%c%c",&a,&b);
//假设输入数据“x,y”,则变量a和b的值分别为x和,2.5.2scanf()函数使用注意事项(6)scanf()函数中没有类似printf()的精度控制。如:scanf("%5.2f",&a);(7)scanf()函数中的格式控制串不能以空白字符结尾,如:scanf("%f\n",&a);(8)scanf()函数使用时要包含头文件#include<stdio.h>。2.5.3字符输入输出函数putchar()和getchar()字符数据的输入和输出除了可以使用“%c”配合scanf()和函数printf()以外,还可以使用专门的字符输入输出函数——putchar()和getchar(),它们都是C语言提供的标准库函数,包含在头文件<stdio.h>中。1.
putchar()函数putchar()函数的功能是把指定的字符送到标准输出设备(一般是显示器)上,其调用格式为:putchar(c)(1)当c为字符常量或变量时,直接输出该常量或变量代表的字符,包括转义字符,如:charch='F';puthchar('M'); //输出字母Mputhchar('\n'); //输出换行符puthchar(ch); //输出变量ch的值:字母F(2)当c为一个介于十进制0~127(包括0及127)之间的整型常量或变量时,输出对应ASCII值代表的字符,如:intch1=65,ch2=0x41;puthchar(65); //输出大写字母A,A的ASCII码值为65puthchar(ch1); //输出大写字母Aputhchar(ch2); //输出大写字母A,0x41是65对应的十六进制注意:putchar()函数每次只能输出一个字符,若要输出多个字符,则需要多次调用putchar()函数。2.
getchar()函数getchar()函数的作用是从标准输入设备(一般是键盘)读入一个字符赋给相应的变量,其调用格式为:
getchar()如:charch1; ch1=getchar(); //假设用户从键盘输入字符A,则ch1=A;
intch2;ch2=getchar(); //假设用户从键盘输入字符A,则ch2=65;getchar()函数每次只从标准输入设备读取一个字符,当输入超过一个字符时,其他字符会暂存在键盘缓存区中,等待后续getchar()函数读取,直到缓冲区中的字符读完,才继续等待用户输入。如:charch1,ch2; //假设用户从键盘输入65,注意65被识别成两个字符!!!ch1=getchar(); //ch1=6ch2=getch
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 珍惜生命健康拒绝校园暴力小学主题班会课件
- 老年人智能家居系统适配优化解决方案
- 设计师掌握时尚搭配技巧指导书
- 小型创业团队财务危机紧急沟通预案
- 对2026年项目进度的时间提醒函(7篇)范文
- 感恩伴我成长孝心照亮未来-小学主题班会课件
- 2026年四级公共营养师考试练习题(附答案)
- 预防校园欺凌学会友善待人小学主题班会课件
- 热爱运动健康成长的小学主题班会课件
- 石油钻井工程师油井安全与效率绩效衡量表
- 老年髋部骨折诊疗专家共识(2025版)
- 医疗护理员心理调适与压力管理
- 雨课堂学堂在线学堂云《水文随机分析(华北电力)》单元测试考核答案
- 2026年山东能源集团西北矿业有限公司招聘(200人)笔试历年难易错考点试卷带答案解析
- 跨境电商运营日常工作流程及管理手册
- 数据合规审计制度
- 餐饮具集中消毒单位质量评估指南
- 青少年活动中心日常考核制度
- 房地产评估师技能考核内容概览试题及答案
- 2026年全球移动游戏行业白皮书
- DB32∕T 5131-2025 医疗机构老年综合评估服务规范
评论
0/150
提交评论