为了顺应当前形势和更好的发展,黑基网已于9月19日正式更名为【安基网】,域名更换为www.safebase.cn,请卸载旧的APP并安装新的APP,给您带来不便,敬请理解!谢谢

黑基Web安全攻防班
安基网 首页 IT技术 编程开发 查看内容

C语言中3种输入输出函数各自的功能

2016-4-8 15:57| 投稿: |来自: 互联网

摘要: 1.printf()和scanf()是格式输出输入函数,最后的f是format(格式)的意思。2.putchar() getchar() 输出输入函数只针对单个字符的操作。3.puts(),gets() 输出输入函数可以单个字符操作(但是功能有限的),主要是针对 ...
1.printf()和scanf()是格式输出输入函数,最后的f是format(格式)的意思。

2.putchar() getchar() 输出输入函数只针对单个字符的操作。


3.puts(),gets() 输出输入函数可以单个字符操作(但是功能有限的),主要是针对字符串操作。
 
 
下面我们定义
int a
用scanf("%d",a)可以获取整型a的值,a=getchar(),gets(a)无法从键盘获取数字
用printf("%d",a)可以打印数字a的值,putchar(a),puts(a)没法打印
数字方面:printf()和scanf()胜

char a
用scanf("%c",&a) 可以获取字符a的值,用a=getchar()能获取a的值,用gets(a)不能获取
用printf("%c",a)可以打印字符a的值 用a=getchar()可以打印a的值,用puts(a)不能打印

字符方面:getchar()和putchar()第1 scanf()和printf()第2 gets和puts()败

补充:puts()和gets()能接收和打印单个字符只限制变量是数组变量
例如 char a[50];
      gets(a);
      put(a);
你输入一个字符就会打印一个字符

但如果是字符变量
    char a='x';          char a;
     puts(a);       或       gets(a);
                        puts(a);

就无法运行


char a[50]

用scanf("%s",a)能获取数组a的值,用a=getchar()无法获取,用gets(a)能获取a的值
用printf("%s",a)能打印数组a的值 用putchar(a)无法打印,用puts(a)能打印a的值

字符串(数组)方面:gets()和puts()第一,scanf()和printf()第2,getchar()和putchar()败

可见scanf()和printf()什么都能实现,但对字符和字符串操作没有其他两种好
getchar()和putchar()对字符操作优势明显,但不能操作数字变量,字符数组变量
gets()和puts()对字符串操作优势明显,但也不能操作数字变量,字符变量

scanf()和printf()格式输入输出能同时按格式一起输入输出字符,数字,字符串
这是其他两种不能比的

所以程序以scanf()和printf()为主,其他两种作为辅助,发挥各自的长处。

最后来个总结,用程序表示

#include
main()
{
      char a,b[50];
      printf("请输入第一个字符:\n");
      scanf(" %c",&a);
      getchar();        //获取前面的回车
      printf("第一个的字符为:%c\n",a);

    
      printf("请输入第二个字符:\n");
      a=getchar();
      printf("第二个字符为:");
      putchar(a);
      putchar('\n');

      printf("请输入第一个字符串:\n");
      scanf(" %s",&b);
      getchar();        //获取前面的回车
      printf("第一个的字符为:%s\n",b);

      puts("请输入第二个字符串:");
      gets(b);
      puts("第二个字符串为:");
      puts(b);
    



}    

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册黑基账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

本文出自:http://www.52bcx.com/Program/c/hx/list_12_2.html

免责声明:本文由投稿者转载自互联网,版权归原作者所有,文中所述不代表本站观点,若有侵权或转载等不当之处请联系我们处理,让我们一起为维护良好的互联网秩序而努力!联系方式见网站首页右下角。

2

鲜花

握手

雷人

路过

鸡蛋

刚表态过的朋友 (2 人)

相关阅读

发表评论

最新评论

引用 vsword 2017-8-16 14:58
我想拜个师怎么样
引用 ken2079 2016-4-13 09:54
感谢分享

查看全部评论(3)

最新

返回顶部