输入和输出的总结(c语言)
c语言中有多种的输入和输出方式,下面就简单总结一下:
一.输入的三种方式
(1)scanf
scanf 函数可以在变量中使用,也可以在数组中使用,当然指针上也能用到,是一个很好的输入函数.scanf是一个格式输入,比如scanf("%d-%d-%d",&i,&j,&z),在控制台上输入的时候,应该以双引号的格式输入即2015-3-19的格式输入,否则会出错!
scanf的缺点:
在字符串输入的时候,不能有空格.遇到空格会自动结束输入;
另外,如果用户输入的字符串长度大于数组长度时,没有空间存'\0'这个结束符!
还有一个缺点就是,scanf属于不安全类型的输入法.
(2)gets函数输入法
使用的例子:
char arr[10];
gets(arr);
printf("%s",arr);
优点:字符串输入的时候,可以有空格;
缺点:不安全,如果输入的字符串的长度大于了数组的长度,会溢出
(3)fgets()函数输入法
fgets()函数的使用:fgets(字符数组名,数组长度,stdin) ,其中,stdin是指标准的输入
例子:int arr[10];
fgets(arr,10,stdin);
fgets()的优点:如果输入的字符串长度大于可字符数组的长度,此时,fgets会自动截断
注意事项:fgets只能保存的长度为数组长度减一个字符,因为他要用一个字符长度来存放'\n';
当输入的内容小于数组长度的时候,多接收了一个换行字符(要检验它多接收了一个换行的标志,用输入ASCII码的数字形式输出 即%d,'\n'在ASCII的十进制数为10);其解决办法把'\n'替换成'\0'
如下:
(if(s[stlen[s]-1])=='\n') { s[strlen[s]-1='\0';}
二.输入的三种函数
(1)printf()函数
printf是格式化输出,例如printf("%d,%d,%d",i,j,k)在控制台上的输出格式为 2015,3,19(因为上引号中用括号隔开,所以控制台也用逗号隔开;如果换成空格隔开,控制台上显示的也是用空格隔开),简而言之,printf的格式是怎么样的,显示出来的格式就是什么样的!
缺点:printf不能自动换行
(2)puts()函数输出
puts函数克服了printf不能自动换行的缺点,可以自动换成;但是却不可以像printf那种可以格式化输出.
使用格式为:puts(数组名);
(3)fputs()函数输出
fputs()可以输出一个字符串到文件中,格式如下:
fputs(数组名,stdout),其中,stdout 标准的输出
例子:fgets(s , stdout)
缺点:fputs不能自动换行
输入和输出的总结(c语言)的更多相关文章
- Ubuntu下键盘输入错乱问题,输入双引号输出的是@符号,输入#号输出的是未知语言的字符
装完搜狗后,键盘开始出现混乱,切换到英文输入法,输入双引号输出的是@符号,输入#号输出的是未知语言的字符. 网上有的说在 system - keyboard - Input Source 下看看是否是 ...
- C++输入和输出
本文转载:blog.csdn.net/zhanghaotian2011/article/details/8868577博客 输入和输出并不是C++语言中的正式组成成分。C和C++本身都没有为输入和输出 ...
- C#语言基础— 输入与输出
C#语言基础— 输入与输出 1.1函数的四要素:名称.输入.输出.加工 1.2主函数:输出语句.输入语句: Static viod Main(string[] stgs)//下划线部分可以自己指定 { ...
- 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出
[源码下载] 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 预处理命令 输入 ...
- C语言的本质(23)——C标准库之输入与输出(上)
1..文件的基本概念 所谓"文件"是指一组相关数据的有序集合.这个数据集有一个名称,叫做文件名.实际上在前面的各章中我们已经多次使用了文件,例如源程序文件.目标文件.可执行文件.库 ...
- C语言程序设计--输入与输出
C语言的输入 所有的输入都是依赖于C语言函数进行的,这个函数是C语言标准库自带的,定义在头文件<stdio.h>里面,所以,要想使用与输入相关的函数,都需要包含这个头文件 #include ...
- C语言中字符数据的输入和输出
字符的输出 C语言中使用putchar函数来输出字符数据 #include <stdio.h> int main() { char a,b,c,d; //定义字符变量a,b,c,d a = ...
- Problem X: C语言习题 学生成绩输入和输出
Problem X: C语言习题 学生成绩输入和输出 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 4722 Solved: 2284[Submit] ...
- YTU 2429: C语言习题 学生成绩输入和输出
2429: C语言习题 学生成绩输入和输出 时间限制: 1 Sec 内存限制: 128 MB 提交: 1897 解决: 812 题目描述 编写一个函数print,打印一个学生的成绩数组,该数组中有 ...
随机推荐
- getComputedStyle()与currentStyle
getComputedStyle()与currentStyle计算元素样式 发表于 2011-10-27 由 admin “DOM2级样式”增强了document.defaultView,提供了get ...
- sql CRUD 增删改查复习汇总
1.创建数据库create database 数据库名称删除数据库drop database 数据库名称2.创建表create table 表名( 列名 类型(长度) 自增长 主键 非空,)自增 ...
- 超简单的处理JSON格式和JSON数组格式的String
现在网站上有不少处理JSON格式的工具类,但是我找了一天,发现大都是需要编写相应对象类来进行处理,比较麻烦,比如:Gson,json-lib.Gson,json-lib这些处理那些接口之类的参数名字和 ...
- cordova插件iOS平台实战开发注意点
cordova插件是其设计理念的精髓部分,创建并使用自定义插件也是一件比较容易的事.但在这个过程中也容易进入一些误区或者有一些错误的理解,下面从笔者实际开发中遇到的问题出发,对其中的一些注意点和重要概 ...
- Dlib is a modern C++ toolkit(非常全面的类库)
http://dlib.net/ http://download.csdn.net/detail/lajuedan2508/9726225 http://download.csdn.net/detai ...
- java中的trim()
trim():去掉字符串首尾的空格.但该方法并不仅仅是去除空格,它能够去除从编码'\u0000′ 至 '\u0020′ 的所有字符. 回车换行也在这20个字符 例1: public static vo ...
- PE文件格式图示
- Android OpenGL ES 开发教程 从入门到精通
感谢,摘自:http://blog.csdn.net/mapdigit/article/details/7526556 Android OpenGL ES 简明开发教程 Android OpenGL ...
- 让Dreamweaver支持less
编辑->首选参数->文件类型/编辑器->在代码视图中打开->添加" .less"后缀
- 2014年最大福利:185个Google排名因素!免费电子书下载
本博开张以来最大规模的干货放送!新手老手都有用! 不要再去追求PR了,不要再去发博客发论坛发外链了! 关注真正有用的Google排名因素! 整整185项,每一项都附带说明,必要的地方会给出一些附加的阅 ...