C 输入输出的代码实例

C 语言输入输出基础

C 语言的输入输出通过标准库 <stdio.h> 实现,核心函数包括 printf()scanf()getchar()putchar() 等。

格式化输出:printf()

printf() 用于将数据格式化输出到标准输出(通常是屏幕)。

#include <stdio.h>
int main() {
    int num = 42;
    float pi = 3.14159;
    printf("整数: %d\n浮点数: %.2f\n字符串: %s\n", num, pi, "Hello");
    return 0;
}

  • %d 格式化整数,%.2f 保留两位小数,%s 输出字符串。
格式化输入:scanf()

scanf() 从标准输入读取数据并存储到变量中。

#include <stdio.h>
int main() {
    int age;
    printf("输入年龄: ");
    scanf("%d", &age);  // & 获取变量地址
    printf("年龄: %d\n", age);
    return 0;
}

  • 注意变量前的 &(取地址运算符),字符串数组除外。

字符输入输出

getchar()putchar() 用于单个字符的读写。

示例:字符复制
#include <stdio.h>
int main() {
    char c;
    printf("输入字符: ");
    c = getchar();  // 读取单个字符
    printf("输出: ");
    putchar(c);     // 打印字符
    return 0;
}

示例:逐字符读取文件(模拟)
#include <stdio.h>
int main() {
    char c;
    while ((c = getchar()) != EOF) {  // EOF 表示文件结束
        putchar(c);
    }
    return 0;
}

  • 输入 Ctrl+D(Unix/Linux)或 Ctrl+Z(Windows)触发 EOF

字符串输入输出

gets()puts() 用于字符串操作(注意 gets() 不安全,建议用 fgets())。

安全输入:fgets()
#include <stdio.h>
int main() {
    char str[100];
    printf("输入字符串: ");
    fgets(str, sizeof(str), stdin);  // 从标准输入读取
    printf("输出: ");
    puts(str);  // 自动追加换行符
    return 0;
}

  • fgets() 会保留换行符,需手动处理。

文件输入输出

通过 FILE 指针和 fopen()fclose() 等函数操作文件。

示例:写入文件
#include <stdio.h>
int main() {
    FILE *file = fopen("test.txt", "w");  // 打开文件(写模式)
    if (file == NULL) {
        perror("文件打开失败");
        return 1;
    }
    fprintf(file, "Hello, File!\n");  // 写入格式化数据
    fclose(file);  // 关闭文件
    return 0;
}

示例:读取文件
#include <stdio.h>
int main() {
    FILE *file = fopen("test.txt", "r");
    if (file == NULL) {
        perror("文件打开失败");
        return 1;
    }
    char buffer[100];
    while (fgets(buffer, sizeof(buffer), file) != NULL) {
        printf("%s", buffer);
    }
    fclose(file);
    return 0;
}


二进制文件操作

fread()fwrite() 用于二进制数据读写。

示例:写入二进制数据
#include <stdio.h>
struct Data {
    int id;
    float value;
};
int main() {
    FILE *file = fopen("data.bin", "wb");
    struct Data d = {1, 3.14};
    fwrite(&d, sizeof(struct Data), 1, file);
    fclose(file);
    return 0;
}

示例:读取二进制数据
#include <stdio.h>
struct Data {
    int id;
    float value;
};
int main() {
    FILE *file = fopen("data.bin", "rb");
    struct Data d;
    fread(&d, sizeof(struct Data), 1, file);
    printf("ID: %d, Value: %.2f\n", d.id, d.value);
    fclose(file);
    return 0;
}

通过以上示例,可快速掌握 C 语言中不同场景下的输入输出操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值