C语言:输入输出
C语言无I/O语句,i/o操作由函数实现
#include<stdio.h>
字符输出函数putchar:
格式:putchar(c)
参数:c为字符常量,变量或者表达式
功能:把字符c输出到显示器上
返回值:正常,为显示的代码值
#include<stdio.h>
int main()
{
int c;
char a;
c = ;
a ='B';
putchar(c);
putchar('\n');
putchar(a);
}// A
B
格式输出函数printf
格式:printf("格式控制符",输出表)
功能:按照指定的格式向显示器输出数据
输出表:要输出的信息
格式控制符:包含两种信息
格式说明:%【修饰符】格式字符,用于指定输出格式
普通字符:原样输出
static char a[]="hello world!"
printf("%s\n",a);
printf("%15s\n",a);
printf("%10.5s\n",a);
printf("%2.5s\n",a);
printf("%.3s\n",a);
//output
hello world!
hello world!
hello
hello
hel
字符输入函数getchar
格式:getchar()
功能:从键盘读取一个字符
返回值:正常,返回读取的代码值;错误或者结束键盘输入,返回-1
#include<stdio.h>
int main()
{
int c;
printf("enter a character:");
c = getchar();
printf("%c--%d-->hex%x\n",c,c,c);
return ;
}
//output
enter a character:A
A---->HEX41
格式输入函数scanf
格式:scanf("格式控制符",地址表);
功能:按照指定格式从键盘读入数据,存入地址表
存储单元中,按回车键结束
返回值:正常,返回输入数据个数
地址表:变量的地址,常用取地址符&
说明:
用"%c"格式符,空格和转义字符作为有效字符输入
例子:
scanf("%c%c%c",&c1,&c2,&c3);
/*若输入a b c
则c1为a,c2为空格,c3为b*/
总结:在输入数据时,遇到以下情况认为数据结束:
遇到空格,TAB,或者回车
遇非法输入
遇宽度结束
例子:
ret = scanf("%d%c%f",&a,&b,&c);
/*
若输入1234a123o.26
则a为1234,b为‘a’,c为123
*/
************************************************如何处理输入函数留下的垃圾******************************************************
使用输入函数可能会留下垃圾
int x;
char ch;
scanf("%d",&x);
scanf("%ch",&ch);
printf("x=%d,ch=%c\n",x,ch);
//当输入第二次的时候,第一次的输入之后的回车被当作输入的字符
方法1:
用getchar()清除:
int x;
char ch;
scanf("%d",&x);
getchar();
ch = getchar();
printf("x= %d,ch =%c\n",x,ch);
方法2:
用格式串中空格或者“%*c”来吃掉
int x;
char ch;
scanf("%d",&x);
scanf(" %c",&ch);or scanf("%*c%c",&ch)
字符串输入函数:gets
格式:char * gets(char *s)
功能:从键盘输入一回车结束的字符串放入字符数组中,并且自动加'\0'
说明1:输入串长度应小于字符数组维数
说明2:与scanf函数不同,gets函数并不以空格作为字符串输入结束的标志
int main( )
{
char string[];
printf(“Input a string:”);
gets(string);
printf(“%s\n”, string);
return ;
}
字符串输出函数puts
‐格式: int puts(const char *s)
‐功能:向显示器输出字符串( 输出完,换行)
‐说明:字符数组必须以‘ \0’ 结束
#include <stdio.h>
int main( )
{
char string[] = “How are you”;
puts(string);
return ;
}
输入: How are you?
输出: How are you ?
C语言:输入输出的更多相关文章
- 04C语言输入输出
C语言输入输出 输入字符getchar() #include <stdio.h> int main(){ putchar(getchar()); putchar(getchar()); ; ...
- R语言--输入输出
基本输入输出 输入: readline, edit, fix 输出: print, cat 输出重定向 sink #基本输入输出 x=readline('请输入:') #读取输入,一行为一个字符串 x ...
- C语言输入输出整数
scanf("%llu", &x); printf("%llu\n", x); scanf("%u", &x); print ...
- c语言输入输出
一 #include "stdio.h"int main(){ FILE *fp; int ninzu=0; char name[100]; double hsum=0.0; do ...
- C语言----输入输出语句(基础篇二)
今天整理一下自己的基础篇输入和输出的理解,自己没有研究系统输入和输出函数,以后有时间在去深究,之前在别人的博客里面看到这么一句话分享给大家,“学习就是一个不断抄袭,模仿,练习和创新的一个过程”. 使用 ...
- R 语言输入输出 读取命令函参数
输入数据 使用键盘输入数据 只能处理小样本,很少使用 在创建 data.txt 字符串之后,用函数 read.table() 创建数据框 data.1.这种方法可以让我们把数据嵌入到R代码中,此处切记 ...
- 小C的故事(快速学C语言,,,极速版!)
前几天这篇博客写了太多废话! 删啦~~. 本篇博客只是为chd A协的全嫩小鲜肉入门C语言的预科, 如果你在此处学习C语言, 不幸走火入魔, 小弱概不负责. //请直接随便找个C语言编译器,抄一下下面 ...
- C/C++中的输入输出重定向
目录 一 C/C++中的输入输出重定向 1.1 C语言输入输出重定向 1.2 C++语言输入输出重定向 参考资料 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 C/C++中的输入输出重定向 ...
- socket初级使用(客户端)
在国庆这段时间里用零星的一些时间看了一下socket的学习资料,由于笔者偏向学习实用方面的内容,因此此篇文章涉及理论知识较少,主要是以实现思路(怎么做)为主,但在实现之前还是需要了解一些基础的理论知识 ...
- B - A + B Again
Description There must be many A + B problems in our HDOJ , now a new one is coming. Give yo ...
随机推荐
- 数据结构作业——order(二叉树遍历)
order Description 给出一棵二叉树的中序遍历和每个节点的父节点,求这棵二叉树的先序和后 序遍历. Input 输入第一行为一个正整数 n 表示二叉树的节点数目, 节点编号从 1 到 n ...
- CF 321B Kefa and Company(贪心)
题目链接: 传送门 Kefa and Company time limit per test:2 second memory limit per test:256 megabytes Desc ...
- Linux 命令之 Navicat 连接 Linux 下的Mysql数据库
2016年12月7日18:44:06 -====------------------------ GRANT ALL PRIVILEGES ON *.* TO 'itoffice'@'%' IDEN ...
- 前端必备:FastStoneCapture 和 Licecap
前端必备:FastStoneCapture 和 Licecap FastStoneCapture这个软件非常小,只有2M多,并且其功能很强大,包括截图,录制视频,量尺,取色等等,对于前端工程师绝对是必 ...
- mysql 根据查询结果集更新
声明: MySQL4.0之后的版本可以支持下面sql语句进行更新操作 应用场景: 一个表中的字段需要根据查询结果集进行更新,或者从另一表查询获得 其本质还是更新的数据需要查询获得. 例如: use ...
- [Java]double初始化问题
如下: 1. 直接初始化 double[][] embossFilter = {{-1/9, 0, 1/9}, {-1/9, 1/9, 1/9}, {-1/9, 0, 1/9}}; 2. 赋值初始化 ...
- easyUI数据表格datagrid之分页
一.分页函数 /**========================================= * 分页函数 */function pagerFilter(data) { if(typeof ...
- Java web 使用页面压缩
借助类,相关依赖: <!-- https://mvnrepository.com/artifact/net.sourceforge.pjl-comp-filter/pjl-comp-filter ...
- My latest news (--2016.10)
2016.10.31 22:44 一个“程序”,打代码占40%.思考占60% 2016.10.30 20:53 周末,话说今天有晚上讲座,还点名,了,悲催.之前学习的Qt有点问题,悲催.推荐个博文:h ...
- ansible加密命令
ansible-vault用于配置文件加密,如编写的playbook配置文件中包含敏感信息,不希望其他人随意查看,ansible-valut可加密/解密这个配置文件,刚试了下也可以加密txt文档,猜想 ...