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语言:输入输出的更多相关文章

  1. 04C语言输入输出

    C语言输入输出 输入字符getchar() #include <stdio.h> int main(){ putchar(getchar()); putchar(getchar()); ; ...

  2. R语言--输入输出

    基本输入输出 输入: readline, edit, fix 输出: print, cat 输出重定向 sink #基本输入输出 x=readline('请输入:') #读取输入,一行为一个字符串 x ...

  3. C语言输入输出整数

    scanf("%llu", &x); printf("%llu\n", x); scanf("%u", &x); print ...

  4. c语言输入输出

    一 #include "stdio.h"int main(){ FILE *fp; int ninzu=0; char name[100]; double hsum=0.0; do ...

  5. C语言----输入输出语句(基础篇二)

    今天整理一下自己的基础篇输入和输出的理解,自己没有研究系统输入和输出函数,以后有时间在去深究,之前在别人的博客里面看到这么一句话分享给大家,“学习就是一个不断抄袭,模仿,练习和创新的一个过程”. 使用 ...

  6. R 语言输入输出 读取命令函参数

    输入数据 使用键盘输入数据 只能处理小样本,很少使用 在创建 data.txt 字符串之后,用函数 read.table() 创建数据框 data.1.这种方法可以让我们把数据嵌入到R代码中,此处切记 ...

  7. 小C的故事(快速学C语言,,,极速版!)

    前几天这篇博客写了太多废话! 删啦~~. 本篇博客只是为chd A协的全嫩小鲜肉入门C语言的预科, 如果你在此处学习C语言, 不幸走火入魔, 小弱概不负责. //请直接随便找个C语言编译器,抄一下下面 ...

  8. C/C++中的输入输出重定向

    目录 一 C/C++中的输入输出重定向 1.1 C语言输入输出重定向 1.2 C++语言输入输出重定向 参考资料 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 C/C++中的输入输出重定向 ...

  9. socket初级使用(客户端)

    在国庆这段时间里用零星的一些时间看了一下socket的学习资料,由于笔者偏向学习实用方面的内容,因此此篇文章涉及理论知识较少,主要是以实现思路(怎么做)为主,但在实现之前还是需要了解一些基础的理论知识 ...

  10. B - A + B Again

    Description There must be many A + B problems in our HDOJ , now a new one is coming.         Give yo ...

随机推荐

  1. Discuz! X2.5 /source/class/helper/helper_seo.php Remote Code Execution Vul

    catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 SEO模块中的preg_replace+修正符e+双引号引发的远程代码执 ...

  2. dedecms /plus/feedback.php SQL Injection Vul

    catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 . Dedecms v5.7的plus\feedback.php SQL ...

  3. ubuntu14.04 配置中文输入法

    ubuntu14.04自带中文输入法,只要配置就可以了. 1.安装中文支持 System Settings -->  Language Support 点击 install/remove lan ...

  4. POJ2010 Moo University - Financial Aid(二分法)

    题目地址 分析:如果用二分法,关键是score和aid分开排序,score排序是为了充分利用中位数的性质,这样就可以确定m左右必须各选N/2个,到这之后有人是用dp求最优解,可以再次按照aid排序一次 ...

  5. Aspx生命周期

    今天去面试,碰到面试官问这个问题.aspx页面生命周期是什么?顿时懵逼 还跟我解释:就是页面怎么解析的aspx页面.果断没看过这方面知识,没答上来.现在记录一下 ASP.NET页面生命周期 ASP.N ...

  6. Java反射API使用实例

    /**     * 访问Class对应的类所包含的注释:getAnnotation();getDelaredAnnotation();     * 访问Class对应的类所包含的内部类:getDecl ...

  7. android service 的各种用法(IPC、AIDL)

    http://my.oschina.net/mopidick/blog/132325 最近在学android service,感觉终于把service的各种使用场景和用到的技术整理得比较明白了,受益颇 ...

  8. 【百度百科】对焦Focus

    词语解释 duìjiāo [focusing] 指使用照相机时调整好焦点距离 对焦也叫对光.聚焦.通过照相机对焦机构变动物距和相距的位置,使被拍物成像清晰的过程就是对焦. 自动对焦 传统相机,采取一种 ...

  9. GitHub的三个按钮

    star 的作用是收藏,目的是方便以后查找. watch 的作用是关注,目的是等作者更新的时候,可以收到通知 fork 的作用是参与,目的是你可以增加新的内容,然后 Pull Request,把你的修 ...

  10. android webview里获取和设置cookie

    private class MyWebViewClient extends WebViewClient { public boolean shouldOverrideUrlLoading(WebVie ...