C语言程序设计--输入与输出
C语言的输入
所有的输入都是依赖于C语言函数进行的,这个函数是C语言标准库自带的,定义在头文件<stdio.h>里面,所以,要想使用与输入相关的函数,都需要包含这个头文件
#include <stdio.h>
输入函数gets
这是一个获取输入字符串的函数,其定义如下文,作用是从 stdin 读取一行到 s 所指向的缓冲区,直到一个终止符或 EOF。
char * gets(char * string){...}
试验gets
代码如下文
#include <stdio.h>
#define BANNER "Please input:"
int main(void){
char string[100];
printf(BANNER);
gets(string);
puts(string);
return 0;
}

很简单,但是不推荐,因为gets是不安全的,他可以输入任意长度的字符,可以覆盖超过变量定义支持的长度,缓冲区溢出风险大。
输入函数getchar
这是一个获取输入字符的函数,其定义如下文,作用是从屏幕读取下一个可用的字符,并把它返回为一个整数。这个函数在同一个时间内只会读取一个单一的字符。您可以在循环内使用这个方法,以便从屏幕上读取多个字符。
int getchar(void){...}
试验getchar
代码如下文
#include <stdio.h>
#define BANNER "Please input:"
int main(void){
char string;
printf(BANNER);
string = getchar();
putchar(string);
return 0;
}

不推荐,因为获取多个字符输入会很麻烦。
输入函数scanf
这是一个获取输入特定数据类型的函数,其定义如下文,函数从标准输入流 stdin 读取输入,并根据提供的 format 来浏览输入。
int scanf(const char *format, ...){}
试验scanf
代码如下文
#include <stdio.h>
#define BANNER "Please input:"
int main(void){
char input_char;
int input_int;
char input_string[100];
float input_float;
double input_double;
printf(BANNER);
scanf("%d", &input_int);
printf("%d\n", input_int);
printf(BANNER);
scanf("%c", &input_char);
printf("%c\n", input_char);
printf(BANNER);
scanf("%s", input_string);//这里只能是数组,因为如果是char *,则不知道大小,会发生段错误,这里使用&input_string 效果一样,但是会有warning,不推荐,
printf("%s\n",input_string);
printf(BANNER);
scanf("%f", &input_float);
printf("%f\n", input_float);
printf(BANNER);
scanf("%lf", &input_double);
printf("%lf\n", input_double);
return 0;
}

C语言的输出
所有的输出都是依赖于C语言函数进行的,这个函数是C语言标准库自带的,定义在头文件<stdio.h>里面,所以,要想使用与输出相关的函数,都需要包含这个头文件
#include <stdio.h>
输出函数puts
函数把字符串 s 和一个尾随的换行符写入到 stdout。
int puts(const char *s){...}
试验puts
在试验gets中试验过了puts
输出函数putchar
函数把字符输出到屏幕上,并返回相同的字符。这个函数在同一个时间内只会输出一个单一的字符。您可以在循环内使用这个方法,以便在屏幕上输出多个字符。
int putchar(int c){...}
试验putchar
在试验getchar中试验过了putchar
输出函数printf
函数把输出写入到标准输出流 stdout ,并根据提供的格式产生输出。
int printf(const char *format, ...){...}
试验printf
在试验scanf中试验过了printf
附录:标准化输入输出的格式:
| 数据格式类型 | 输入输出的类型标识符 |
|---|---|
| 十进制整数 | %d |
| 字符型 | %c |
| 整数 | %i |
| 浮点数 | %e, %f, %g |
| 八进制数 | %o |
| 字符串 | %s |
| 十六进制书 | %x |
| 指针 | %p |
| 一个等于读取字符数量的整数 | %n |
| 一个无符号整数 | %u |
C语言程序设计--输入与输出的更多相关文章
- C#语言基础— 输入与输出
C#语言基础— 输入与输出 1.1函数的四要素:名称.输入.输出.加工 1.2主函数:输出语句.输入语句: Static viod Main(string[] stgs)//下划线部分可以自己指定 { ...
- C语言数据输入与输出
1 概论 C语言提供了跨平台的数据输入输出函数scanf()和printf()函数,它们可以按照指定的格式来解析常见的数据类型,例如整数,浮点数,字符和字符串等等.数据输入的来源可以是文件,控制台以及 ...
- R语言学习——输入与输出
导入数据: grades<-read.table("D:/ProgramData/test1.txt",sep="\t") 求均值:mean() 求方差: ...
- 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出
[源码下载] 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 预处理命令 输入 ...
- 输入和输出的总结(c语言)
c语言中有多种的输入和输出方式,下面就简单总结一下: 一.输入的三种方式 (1)scanf scanf 函数可以在变量中使用,也可以在数组中使用,当然指针上也能用到,是一个很好的输入函数.scanf是 ...
- [转]C语言文件输入/输出ACM改进版(freopen函数)
C语言文件输入/输出ACM改进版(freopen函数) 2009年5月27日 10:379,457 浏览数发表评论阅读评论 文章作者:姜南(Slyar) 文章来源:Slyar Home (www. ...
- C语言的本质(23)——C标准库之输入与输出(上)
1..文件的基本概念 所谓"文件"是指一组相关数据的有序集合.这个数据集有一个名称,叫做文件名.实际上在前面的各章中我们已经多次使用了文件,例如源程序文件.目标文件.可执行文件.库 ...
- Ubuntu下键盘输入错乱问题,输入双引号输出的是@符号,输入#号输出的是未知语言的字符
装完搜狗后,键盘开始出现混乱,切换到英文输入法,输入双引号输出的是@符号,输入#号输出的是未知语言的字符. 网上有的说在 system - keyboard - Input Source 下看看是否是 ...
- C语言中字符数据的输入和输出
字符的输出 C语言中使用putchar函数来输出字符数据 #include <stdio.h> int main() { char a,b,c,d; //定义字符变量a,b,c,d a = ...
随机推荐
- mysql使用sql语句查询数据库所有表注释已经表字段注释
场景: 1. 要查询数据库 "mammothcode" 下所有表名以及表注释 /* 查询数据库 ‘mammothcode’ 所有表注释 */ SELECT TABLE_NAME,T ...
- recovery中英对照表 recovery大全图解
一:Recovery主界面 ---reboot system now 重启手机(刷机完毕选择此项就能重新启动系统) ---apply SDcard:up ...
- linux nginx配置新项目加域名
找到nginx的配置文件 nginx/nginx.conf 第一种方,法直接在nginx.com里面配置 user www www; worker_processes auto; error_log ...
- SharePoint 2013 隐藏左边快速启动菜单栏(Hiding the Quick Launch Bar)
在SharePoint 2013默认网站页面中,很多时候,我们需要隐藏左边快速启动菜单栏,这时我们可以通过下面的样式来实现隐藏它. 和SharePoint 2010不太一样,方法改了,不过性质是一样的 ...
- Bat注释符号
打开命令显示:echo on关闭命令显示:echo off, @ echo off, (加@表示连echo off都不显示,不然会显示出echo off的命令) rem : 注释, 表示不执行rem ...
- golang 内存分析/动态追踪
如果你的go程序是用http包启动的web服务器,你想查看自己的web服务器的状态.这个时候就可以选择net/http/pprof.你只需要引入包_"net/http/pprof" ...
- docker 相关文章
https://baijiahao.baidu.com/s?id=1581420975184566963&wfr=spider&for=pc 创建centos基础镜像 https ...
- 修改centos的时间,解决时间比本地实际时间快了8小时
1.vi /etc/sysconfig/clock #编辑文件ZONE="Asia/Shanghai"UTC=false #设置为false,硬件时钟不于utc时间一致ARC=fa ...
- AngularJS------命令行
如下:(‘$’符号不需要输入哦) $ ng build --发布项目
- Java -- 异常的捕获及处理 -- Exception类与RuntimeException类
7.3 Exception类与RuntimeException类 Exception类与RuntimeException类的联系与区别??? 例:字符串变为整型 Class : RuntimeExce ...