tfsf.net
当前位置:首页>>关于if(ch != ' " ' && ch != '...的资料>>

if(ch != ' " ' && ch != '...

这条语句是实现把一个字母字符转换成小写形式 赋值语句右边是一个"x?a:b"条件判断运算符 运行形式为如果x为真,那么执行a,否则执行b 语句首先执行括号中的表达式,即: ch>='a'&&ch

与ch不同,所以进入if.注意,这个时候的指针是指向数组的最后一个字符(即字符串的结束符0)*/ if(*str!=ch) { str[0]=ch;//这个表达式的作用是

if(ch>='A' &&chch=ch-'A'+'a';中的ch是一个变量,'A'是一个字符,它的值等于65;'a'是一个字符,它的值等于97;这句话的意思就是:把ch这个变量的值减去65在加上97后所得的值在付给ch

#include "stdio.h" void reverse(char *p) { char ch=*p; if(ch) /*循环条件*/ { reverse(++p); printf("%c",ch); } } int main() { char line[81]={'a','b','c'}; /*初始化*/ char *ptr; ptr=

if(ch!='\n') //表示当你在键盘上按下换行回车键(也就是"enter"键)的时候,dowhile循环就退出了,转义字符'\n'是表示换行的意思.

不要把c中的语句与数学等价. 数学中的连续小于或大于之类的,都要分解开写才行. 在c中,比较运算的结果是0或1,0是不成立,1是成立. 'a'<=ch<='z' 它首先算'a'<=ch,这里它不是0就是1 然后 0或1<='z' 'z'的值远大于1,所以,这个算式结果为1,意思是永远成立.

不可以,97<=ch<=122的计算过程是先计算97<=ch的值,成立为1不成立为0,接着比较0或1与122的大小,显然122更大,因此97<=ch<=122恒为真.切不可将数学表达式与C语言表达式相混淆.

转义 ch != " ' " ch不等于单引号不加的活会出错也可以写成这样if (ch != '"' && ch != "'")

if(ch>='a' && ch<='z') 如果 ch 是小写英文字母的话 则执行:arr[ch-'a'] = arr[ch-'a'] + 1.这可能是统计一段文章或一个字符串里小写英文字母的个数.int arr[26]; arr[0] 存放小写英文字母 a; arr[1] 存放小写英文字母 b; arr[25] 存放小写英文字母 z;'a' 是字符常量,数值等于 字母a 的 ASCII 值,所以 ch-'a' 等于 0 到 25 正好 对应 a,b,c,d,x,y,z.++arr[ch-'a']; 就是 arr[ch-'a'] = arr[ch-'a'] + 1. 其中 ++ 是前缀自增1运算.

'0'在 ASCII 表中是第48个,'1'是第49个……以此类推到'9'是第57个.int i='0' 也就是 int i=48;同理 char c=48 也就是 char c='0'. 所以,int a=ch-'0'; 也就是 int a=ch-48; 也就是把 char 转成了 int. 例: char ch='9'; //也就是ch=57 int a=ch-'0'; //也就是a=57-48=9,这样就是把 char 转成 int 了

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.tfsf.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com