我不明白这个C程序到底什么意思?那个好心人帮帮忙啊

#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <string.h>
main()
{
int i,len;
char ch[50];
gets(ch);
len=strlen(ch);
for (i=0;i<len;i++)
if (isalpha(ch[i]))
ch[i]^=0x0020;
puts(ch);
getch();
}这个程序不明白,尤其是FOR循环以后的语句

if (isalpha(ch[i]))
就是 if (isalpha(ch[i]) != 0)
当ch[i]是英文字母的时候执行下面的语句。

ch[i]^=0x0020;
就是ch[i]=ch[i]^0x0020
^是位运算符 按位异或

puts(ch);
是打印出数组
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-09-24
isalpha(ch[i]),判断字符是否为英文字母
第2个回答  2007-09-24
你是符号不会还是程序不懂?

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网