您的位置:首页 > 运维架构 > Linux

ctype.h系列字符函数--isalpha()函数的使用例子

2016-12-29 16:07 197 查看
        在程序例1中 输出显示出句号被转换为斜杠;这是因为斜杠字符对应的ASCAII码比句号的ASCAII码大1。但是如果程序指明只转换字母,将所有非字母(而不只是空格符)保留下来,将会更好。

        ANSI C有一系列标准的函数可以用来分析字符;ctype.h 头文件包含了这些函数的原型。这些函数接受一个字符作为参数,如果该字符属于某特定的种类则返回非零值(真),否则返回零(假)。例如,如果isalpha()函数的参数是个字母,则返回一个非零值。程序例2通过使用该函数扩展了程序例1;

/*程序例1--改变输入,只保留其中的空格*/

#include<stdio.h>

#define SPACE ' '   //SPACE相当于“引号-空格-引号”

int main()

{

 char ch;

 ch = getchar(); //读入一个字符

 while(ch!='\n')//当一行未结束时

 {

  if(ch==SPACE)  //空格不变

   putchar(ch);// 不改变这个点字符

 

   else

       putchar(ch+1);//改变其他字符

       ch=getchar( );//获取下一个字符

  }

  putchar (ch);//打印换行字符

  return 0;

}

/*程序例2--,改变输入,只保留其中的空格*/

#include<stdio.h>

#include<ctype.h>

int main()

{

 char ch;

 ch = getchar(); //读入一个字符

 while(ch!='\n')//当一行未结束时 进入循环

 {

  if(isalpha(ch))  //如果是一个字母

   putchar(ch+1);// 改变这个字符

 

   else

       putchar(ch);//原样打引印

       ch=getchar( );//获取下一个字符

  }

  putchar (ch);//打印换行字符

  return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c语言 嵌入式 linux