提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
一位学习C语言的小白,有错误请私信或评论。
本文主要介绍C语言的输入输出~
一、输入输出
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
1.数据输出
C语言无I/O语句,I/O操作由函数实现
#include <stdio.h>
字符输出函数
格式:putchar©
参数:c为字符常量,变量或者表达式
功能:把字符c输出到显示器中
返回值:正常,为显示的代码值
#include <stdio.h>
int main()
{
int c;
char a;
c=65;a='B';
putchar(c);putchar('\n');putchar(a);
}
运算结果为:
A
B
2.格式输出函数
格式:printf(”格式控制符“,输出表)
功能:按指定格式向显示器输出数据
输出表:要输出的数据
格式控制串:包含两种信息
格式说明: % [修饰符]格式字符,用于指定输出格式
普通字符:原样输出
代码:
int a = 245;
char c = 'a';
float pi = 3.1415926;
char hello[] = "hello world";
printf("%d-%x-%o\n",a,a,a);
printf("%c\n",c);
printf("%f-%e-%g\n",pi,pi,pi);
printf("%s\n",hello);
附加格式说明符
代码示例:
int a = 1234;
float b = 3.1415926;
char s[] = "hello world";
printf("%8d %2d\n",a,a);
printf("%f %9.7f %8.3f\n",b,b,b);
printf("%s,%15s,%10.5s\n",s,s,s);
printf("%08d,%0+8d\n",a,a);
printf("%08f,%0+8f\n",b,b);
3.字符输入函数
字符输入函数getchar
格式:getchar()
功能:从键盘一字符
返回值:正常,返回读取的代码值;出错或结束返回-1
#include<stdio.h>
int main()
{
char ch;
ch = getchar();
printf("%c\n",&ch);
return 0;
}
4 格式输入函数
格式:scanf(“格式控制串”,地址表)
功能:按指定格式从键盘读入数据,存入地址表指定存储单元中,并按回车键结束
返回值:正常,返回输入数据个数
地址表:变量的地址,常用取地址运算符&
目前,scanf支持的格式字符很多,比如:
代码:
#include<stdio.h>
int main()
{
int a;
float b;
char ch;
scanf("%d",&a);
scanf("%f",&b);
scanf("%c",&ch);
printf("%d,%f,%c\n",a,b,ch);
}
scanf函数支持的说明符可以带以下修饰符:
例1:
scanf("%2d %*3d%2d",&a,&b);
若输入1234567
则a为12,b为78
例2:
scanf("%2d %*3d%2d",&a,&b);
若输入1234567
则a为12,b为78
说明:
用"%c"格式符时,空格和转义字符作为有效字符输入
scanf("%c%c%c",&c1,&c2,&c3);
若输入a b c
则C1为a,C2为空格,C3为b
总结:输入数据的时候,遇到以下情况认为该函数结束
遇到空格,TAB或回车
遇非法输入
遇宽度结束
5 输入函数垃圾清理
使用输入函数可能会留下垃圾:
int x;
char ch;
scanf("%d",&x);
scanf("%c",&ch);
printf("x =%d ch = %c \n",x,ch);
方法1:用getchar清除
#include <stdio.h>
#include <stdlib.h>
int main()
{
char a,b;
scanf("%c",&a);
getchar();
scanf("%c",&b);
printf("%c %c",a,b);
return 0;
}
方法2:用格式串中空格或“%*c”来 吃掉
#include <stdio.h>
#include <stdlib.h>
int main()
{
char a,b;
scanf("%c%*c%c",&a,&b);
printf("%c-%c",a,b);
return 0;
}
6 字符串输入输出函数
6.1 字符串输入函数gets
格式:char * gets(char *s)
功能:从键盘输入一以回车结束的字符串放入字符数组中,并自动加 ‘\0’
说明1:输入串长度应小于字符数组维数
说明2:与scanf函数不同,gets函数并不以空格作为字符串输入结束的标志
6.2 字符串输出函数put
格式:int puts(const char *s)
功能:向显示器输出字符串(输出完,换行)
说明:字符数组必须以‘\0’结束
总结
输入输出函数非常实用我们在调试代码,查看代码运行结果时使用,其中格式输入输出最常用,要注意的是scanf在输入字符时会受到空格、tap、回车的影响,gets输入字符串不受空格影响(不结束),puts输出完会自动换行。
标签:函数,记录,scanf,输入输出,C语言,char,printf,格式,输入 From: https://blog.csdn.net/qq_63556165/article/details/139523277