【C语言】输入、输出函数知识、getchar()、putchar()、 scanf()、printf()

函数的声明和定义

1.1 函数声明

1. 告诉编译器有一个函数叫什么,参数是什么,返回类型是什么。但是具体是不是存在,函数声明决定不了。

2. 函数的声明一般出现在函数的使用之前。要满足先声明后使用。

3. 函数的声明一般要放在头文件中的。

1.2 C本身是不提供输入输出功能的,需要使用C语言函数库中的标准输入输出函数库来实现函数中的输入输出。

c语言中提供的输入输出函数有;

getchar / putchar  一次性操作一个字符;

get / put 一次性操作一个字符串
scanf / printf 格式化函数

2.输入输出函数相关知识

2.1 getchar() 与 putchar()

2.1.1 getchar

含义:能在屏幕是输入一个字符。

原型:int getchar(void);
参数:void 证明返回值为空,返回时不用给返回值。
注意:getchar函数的返回值是int类型。
简单来说,getchar()函数就是从键盘(缓冲区)读取用户的输入,返回读取的字符对应的ASCII码值。

#include <stdio.h>
int main()
{
    // 输入
	char ch = getchar();
    // 输出字符
	putchar(ch);
 
	return 0;
}
2.1.2 putchar()

含义:能在屏幕是输出一个字符,putchar函数的主要作用就是打印字符。

原型:int putchar(int c);
参数:void 证明返回值为空  //  返回时不用给实参
注意:putchar函数的输出可以是一个字符,也可以是在0~127之间的一个十进制整型(包括0与127),也可以是用char定义好的字符型常量。
下面用法示例:

#include<stdio.h>
int main() {
	char c = 'A'; 
	putchar(c);    //输出字符A
	putchar('\n'); //输出换行符
	putchar('a');  //输出a
	return 0;
}
#include<stdio.h>
int main() {
	char c, d;
	c = getchar();  //输入字符
	d = getchar();  
	putchar(c);     //输出字符
	putchar('\n');
	putchar(d);
	return 0;
}

2.2 scanf()与printf()

2.2.1 printf()按指定格式输出数据(其最后一个字母f为”格式“(format)之意)

1.定义:printf函数调用的一般形式:

2.printf函数是标准库函数,其函数原型在头文件<stdio.h>中定义,使用形式为:

printf(格式控制字符串,输出表);
3.格式控制字符串可以包含三种字符:格式说明符、转义字符和普通字符。

注意:使用%c格式符按字符形式输出,输出前,系统会将该整数作为ASCII码转换为相应的字符。同样,一个字符型数据也可以用%d格式符以整数形式输出其对应的ASCII值。

  其中:%m.nf形式:

可以指定数据宽度和小数位数。

m表示该浮点数整体所占的列数,包括整数部分、小数点和小数部分;

n表示该浮点数中小数部分所占的列数,

在格式说明符中的%和字母之间,可以使用辅助控制符:

#include<stdio.h>

int main(void)
{
    int a;
    printf("%d",a)
    return 0;
}

2.2.2 scanf()

使用形式:

scanf(格式控制字符串,输入项地址表);

scanf函数的格式控制字符串可以包含三种字符:格式说明符、空白符和非空白符。

(1)格式说明符:用来指定数据的输入格式。

(2)空白符:包括空格、制表符和换行符,通常作为相邻两个输入数据的缺省分隔符。

(3)非空白符:又称普通字符。在输入有效数据时,必须原样输入。

使用scanf函数需要注意的几点
  1. scanf函数中要求输入项地址,应为地址格式,而不是变量名。

  2. 当输入的数据类型为多个数值型数据时,若相邻两个格式指示符之间没有分隔符(如逗号,冒号等),则相应的两个输入项之间可用的分隔符有三种:空格、制表符或换行符。

  3. 当输入的数据类型为字符型数据时,则认为所有输入的字符均为有效字符,特别地,空格和换行符等都作为有效字符被输入。

  4. 输入数据时,遇到以下情况时系统认为该数据输入结束:

    (1)遇到空格、制表符或换行符。

    (2)遇到非法输入。

    (3)超过指定宽度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值