(一).getchar():
返回值:getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕.
如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取.
也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键。
(1).语法:int getchar(void);
(2).返回值:getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕.
如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取.
也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键。
(3).作用:从标准输入流只读取一个字符(包括空格、回车、tab),读到回车符(‘\n‘)时退出,键盘输入的字符都存到缓冲区内,一旦键入回车,getchar就进入缓冲区读取字符,一次只返回第一个字符作为getchar函数的值,如果有循环或足够多的getchar语句,就会依次读出缓冲区内的所有字符直到‘\n‘.
要理解这一点,之所以你输入的一系列字符被依次读出来,是因为循环的作用使得反复利用getchar在缓冲区里读取字符,而不是getchar可以读取多个字符,事实上getchar每次只能读取一个字符.
如果需要取消‘\n‘的影响,可以用getchar()来清除,如:while((c=getchar())!=‘\n‘),这里getchar();只是取得了‘\n‘但是并没有赋给任何字符变量,所以不会有影响,相当于清除了这个字符。
(二).putchar():
(1).输出:putchar函数只能用于单个字符的输出,向终端输出一个字符,且一次只能输出一个字符。
(2).格式:对于变量来说,格式为:putchar(ch);对于常量来说,格式为:putchar(‘ch‘),对于转义字符来说,格式为:putchar(‘\n‘)。
函数名 | 如果是下列参数时,返回值为真 |
---|---|
isalnum() | 字母数字(字母或数字) |
isalpha() |
字母 |
isblank() | 标准得空白字符(空格、水平制表符或换行符)或任何其他本地化指定为空白的字符 |
iscntrl() | 控制字符,如ctrl+B |
isdigit() | 数字 |
isgraph() | 除空格之外的任意可打印字符 |
islower() | 小写字母 |
isprint() | 可打印字符 |
ispunct() | 标点符号(除空格或字母数字字符以外的任何可打印字符) |
isspace() | 空白字符(空格、换行符、换页符、回车符、垂直制表符、水平制表符或其他本地化定义的字符) |
isupper() | 大写字母 |
isxdigit() | 十六进制数字符 |
函数名 | 行为 |
---|---|
tolower() | 如果参数是大写字符,该函数返回小写字符;否则,返回原始参数 |
toupper() | 如果参数是小写字符, 该函数返回大写字符; 否则,返回原始参数 |
(1).形式1:
if(expression)
statement
如果expression为真,则执行statement部分。
(2).形式2:
if(expression)
statement1
else
statement2
如果expression为真,执行statement1部分;否则,执行statement2部分。
(3).形式3:
if(expression1)
statement1
else if(expression2)
statement2
else
statement3
如果expression1为真,执行statement1部分;如果expression2为真,执行statement2部分;否则,执行statement3部分。
注:如果没有花括号,else与离它最近的if匹配,除非最近的if被花括号括起来
逻辑运算符 | 含义 |
---|---|
&& | 与 |
|| | 或 |
! | 非 |
iso646.h头文件
传统写法 | iso646.h |
---|---|
&& | and |
|| | or |
! | not |
逻辑表达式:
当且仅当 expression1和expression2 都为真,expression1 && expression2 才为真。
如果 expression1 或 expression2 为真,expression1 || expression2 为真。
如果 expression 为假,!expression 则为真,反之亦然。
原文:https://www.cnblogs.com/JingChuan-Duan/p/13270319.html