C语言中的输入输出详解

在计算机编程中,输入和输出是程序与外部世界交互的两个基本方式:

  • 输出:将计算机处理后的数据传输至外部输出设备,如显示器或打印机。
  • 输入:从外部输入设备(如键盘、鼠标或扫描仪)接收数据并输入到计算机内部进行处理。

C语言本身并未提供内建的输入输出语句,而是通过调用标准库中的输入输出函数来完成这些操作。下面我们将详细介绍C语言中常用的输入输出函数。

输入函数

  1. scanf():这是一个格式化输入函数,可以接收任意类型的数据。
  2. getchar():字符输入函数,只能接收单个字符。
  3. gets():字符串输入函数,用于接收一整行的字符串输入。

输出函数

  1. printf():格式化输出函数,可以根据指定的格式输出任意类型的数据。
  2. putchar():字符显示函数,只能输出单个字符。
  3. puts():字符串输出函数,用于输出一个完整的字符串,并自动添加换行符。

1. scanf()的使用

scanf("格式控制字符串", 参数地址列表);
  • 格式控制字符串用于约定输入数据的类型和格式,参数的个数必须与变量地址的个数一致。
  • 参数地址列表是一个以逗号分隔的输入数据变量地址序列,每个地址前需加上取址运算符&

例如:

scanf("%d%d%d",&a,&b,&c);

在此例中,%d表示读取整型数值,连续的%d意味着按照顺序读取三个整数,并分别存入变量a、b、c的内存地址中。

以下是几个使用scanf的示例:

示例1:计算圆的面积

#include 

int main() {
    float radius, area;
    printf("请输入半径值:  ");
    scanf("%f", &radius);      // 输入半径
    area = 3.14 * radius * radius;
    printf("area=%f\n", area); // 输出圆的面积
    
    return 0;
}

示例2:求整数绝对值

#include 

int main() {
    int num;
    printf("输入一个整数:");

    scanf("%d", &num);
    int absNum = num;
    if(absNum < 0)
        absNum = -absNum;
    printf("\n 整数:%d--->绝对值为:%d\n", num, absNum);

    return 0;
}

示例3:计算两个数的乘积

#include 

int main() {
    int a,b,c;
    printf("请输入整数a,b:");
    scanf("%d%d",&a,&b);
    c=a*b;
    printf("%d*%d=%d\n",a,b,c);
    
    return 0;
}

2. getchar()与putchar()的使用

  • getchar():从键盘缓冲区读取一个字符。
  • putchar(ch):向标准输出设备输出一个字符,其中ch是一个字符变量。

getchar()putchar()的示例:

#include 

int main() {
    char c = 'A';
    putchar(c);   // 输出字符A
    c = getchar(); // 从键盘读取一个字符并赋值给c
    putchar(c);   // 输出刚刚读取的字符

    return 0;
}

3. gets()与puts()的使用

  • puts():用于输出以null字符结尾的字符串,并自动添加换行符。
  • gets():读取一行字符串输入,直到遇到换行符为止。

尽管gets()由于安全问题已不推荐使用,但为了完整性我们仍做简要介绍:

int main() {

    char str[20];
    gets(str);      // 获取输入的字符串,

你可能感兴趣的:(c,c语言,开发语言)