马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
最简单的输入输出操作是从“标准输入单元”中读取一个字符,或往“标准输出单元”写一个字符。读取某个字符可以用函数getchar来完成。getchar的形式为: variable_name=getchar(); variable_name是已声明为char类型的有效C变量名。当遇到该语句时,计算机等待从键盘输入一个字符,并将该字符作为一个数值赋给getchar函数。由于getchar用在赋值语句的右边,因而getchar的字符值被赋给了左边的变量名。例如: char name; name=getchar(); 当我们在键盘上按下H键时,就把字符‘H’赋给了变量name。由于getchar是一个函数,因而它需要有括号。 图中的程序显示了在交互环境中getchar函数的使用情况。 #include<stdio.h> main() { charanswer; printf("Wouldyou like to know my name?\n"); printf("TypeY for YES and N for NO:"); answer=getchar(); if(answer=='Y'||answer=='y') printf("\n\nMyname is BUSY BEE\n"); else printf("\n\nYouare for nothing\n"); } 该程序为用户显示一个YES/NO类型的问句,并读取用户的单个字符响应。如果响应为Y,那么其输出为如下消息: My name is BUSY BEE 否则,输出为: You are good for nothing 注意,在输入文本与输出消息之间有一空行。 getchar函数可以用来连续一行文本中的字符。例如,下面的程序段就可以从键盘中一个接一个地读取字符,直到按下回车键为止。 ...... char character; character =''; while (character!='\n') { character=getchar(); } ...... 警告 getchar()函数恩能够接受键入的任意字符,包括回车键和制表符。这意味着当我们键入单个字符时,在getchar()函数返回后,新行字符在输入队列中等待,这在交互循环中使用getchar()函数时会产生问题。getchar()函数可用来消除不想要的新行字符。我们也可以用flash()函数来冲刷掉不想要的字符。 写字符 与getchar函数一样,也有一个类似的putchar函数,用于每次往终端写字符。其形式如下: putchat (variable_name); 其中variable_name是一个char类型的变量,包括一个字符。该语句在终端显示包含在variable_name变量中的字符。例如,语句: answer='Y'; putchar (answer); 将字符Y显示在屏幕上。语句: putchar(‘\n’); 是屏幕上的光标移到下一行的开始处。 程序从键盘读取一个字符,并进行大小写转换后再显示出来,也就说,如果输入的是大写字母,那么输出的就是小写字母。反过来也是如此。 该程序使用了三个新的函数islower、toupper和tolower。islower是一个条件函数,如果参数为小写字母,那么该函数为TRUE,否则为FALSE。函数toupper把参数的小写字母转换为大写字母,而tolower函数正好相反。 #include<stdio.h> #include<ctype.h>
main() { charalphabet; printf("Enteran alphabet"); putchar('\n'); alphabet=getchar(); if(islower(alphabet)) putchar(toupper(alphabet)); else putchar(tolower(alphabet)); } 输出 Enter an alphabet a A Enter an alphabet Q q Enter an alphabet z Z 凌阳教育,全国唯一一家原厂式嵌入式培训机构,专业从事嵌入式人才培训13年,最近新开课程信息安全工程师培训,想了解更多嵌入式资料下载或者是凌阳教育的动态,请访问凌阳教育官网www.sunplusedu.com。 |