白骑士的C语言基础篇 1.5 数据输入与输出

系列目录

上一篇:白骑士的C语言基础篇 1.4 函数与递归

        在这一节中,我们将介绍C语言中的数据输入与输出操作,包括标准输入与输出、文件操作(读写文件),以及格式化输入输出。这些操作是程序与用户或其他程序进行交互的基本方式。

标准输入与输出

        标准输入与输出是程序与用户进行交互的基本方式。C语言提供了一些标准库函数来处理这些操作。

标准输出

        标准输出用于将数据输出到控制台。最常用的标准输出函数是‘printf‘,例如:

printf("Hello, World!\n");

        ‘printf‘ 函数可以格式化输出多个数据类型,例如:

int age = 25;
float height = 175.5;
char name[] = "John";

printf("Name: %s, Age: %d, Height: %.1f cm\n", name, age, height);

标准输入

        标准输入用于从控制台读取数据。最常用的标准输入函数是 ‘scanf‘,例如:

int age;

printf("Enter your age: ");
scanf("%d", &age);
printf("Your age is: %d\n", age);

        ‘scanf‘ 函数可以格式化读取多个数据类型,例如:

char name[50];
int age;
float height;

printf("Enter your name, age and height: ");
scanf("%s %d %f", name, &age, &height);
printf("Name: %s, Age: %d, Height: %.1f cm\n", name, age, height);

文件操作(读写文件)

        文件操作允许程序读取和写入文件中的数据。C语言通过标准库提供了一组函数来处理文件操作。

打开文件

        使用 ‘fopen‘ 函数打开文件。该函数返回一个 ‘FILE‘ 指针,用于标识文件,例如:

FILE *file = fopen("example.txt", "r");

if (file == NULL) {
    printf("Failed to open file.\n");

    return 1;
}

关闭文件

        使用 ‘fclose‘ 函数关闭文件,例如:

fclose(file);

读取文件

        使用 ‘fgetc‘、‘fgets‘ 或 ‘fread‘ 函数从文件读取数据,例如:

FILE *file = fopen("example.txt", "r");

if (file == NULL) {
    printf("Failed to open file.\n");

    return 1;
}

char ch;

while ((ch = fgetc(file)) != EOF) {
    printf("%c", ch);
}

fclose(file);

        或者:

FILE *file = fopen("example.txt", "r");

if (file == NULL) {
    printf("Failed to open file.\n");

    return 1;
}

char line[100];

while (fgets(line, sizeof(line), file)) {
    printf("%s", line);
}

fclose(file);

写入文件

        使用 ‘fputc‘、‘fputs‘ 或 ‘fwrite‘ 函数向文件写入数据,例如:

FILE *file = fopen("output.txt", "w");

if (file == NULL) {
    printf("Failed to open file.\n");

    return 1;
}

fputs("Hello, World!\n", file);

fclose(file);

格式化输入输出

        格式化输入输出使我们能够更灵活地处理数据的显示和读取。C语言中的 ‘printf‘ 和 ‘scanf‘ 函数提供了强大的格式化功能。

printf函数

        ‘printf‘ 函数的格式化输出允许我们指定数据的显示方式。常用的格式说明符包括:

  • ‘%d‘:整数
  • ‘%f‘:浮点数
  • ‘%s‘:字符串
  • ‘%c‘:字符
  • ‘%x‘:十六进制整数

        例如:

int num = 255;

printf("Decimal: %d, Hexadecimal: %x\n", num, num);

scanf函数

        ‘scanf‘ 函数的格式化输入允许我们从标准输入读取数据并存储到相应的变量中。常用的格式说明符与‘printf‘相同,例如:

示例代码

        以下是一个综合示例,展示了标准输入与输出、文件操作以及格式化输入输出的使用:

#include <stdio.h>


int main() {
    // 标准输入与输出
    char name[50];
    int age;

    printf("Enter your name: ");
    scanf("%s", name);
    printf("Enter your age: ");
    scanf("%d", &age);
    printf("Name: %s, Age: %d\n", name, age);

    // 写入文件
    FILE *file = fopen("data.txt", "w");

    if (file == NULL) {
        printf("Failed to open file.\n");

        return 1;
    }

    fprintf(file, "Name: %s, Age: %d\n", name, age);

    fclose(file);

    // 读取文件
    file = fopen("data.txt", "r");

    if (file == NULL) {
        printf("Failed to open file.\n");

        return 1;
    }

    char line[100];

    while (fgets(line, sizeof(line), file)) {
        printf("%s", line);
    }

    fclose(file);

    return 0;
}

总结

        通过本节的学习,你已经了解了C语言中的数据输入与输出操作,包括标准输入与输出、文件操作(读写文件),以及格式化输入输出。这些操作是程序与外界进行交互的基本手段,是编写实用程序的基础。

下一篇:白骑士的C语言进阶篇 2.1 数组与字符串​​​​​​​

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白骑士所长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值