117.info
人生若只如初见

C语言怎么实现简单的图书管理系统

实现一个简单的图书管理系统可以使用C语言来实现,以下是一个简单的示例代码:

#include 
#include 

// 定义图书结构体
struct Book {
    int id;
    char title[50];
    char author[50];
    int year;
};

// 初始化图书数组
struct Book library[100];
int num_books = 0;

// 添加图书函数
void addBook() {
    struct Book newBook;
    
    printf("Enter book title: ");
    scanf("%s", newBook.title);
    printf("Enter book author: ");
    scanf("%s", newBook.author);
    printf("Enter publication year: ");
    scanf("%d", &newBook.year);
    
    newBook.id = num_books + 1;
    
    library[num_books] = newBook;
    num_books++;
    printf("Book added successfully!\n");
}

// 显示所有图书函数
void showBooks() {
    for (int i = 0; i < num_books; i++) {
        printf("ID: %d\n", library[i].id);
        printf("Title: %s\n", library[i].title);
        printf("Author: %s\n", library[i].author);
        printf("Year: %d\n", library[i].year);
        printf("\n");
    }
}

int main() {
    int choice;
    
    do {
        printf("1. Add book\n");
        printf("2. Show all books\n");
        printf("3. Exit\n");
        printf("Enter your choice: ");
        scanf("%d", &choice);
        
        switch (choice) {
            case 1:
                addBook();
                break;
            case 2:
                showBooks();
                break;
            case 3:
                printf("Exiting program...\n");
                break;
            default:
                printf("Invalid choice. Try again.\n");
                break;
        }
    } while (choice != 3);
    
    return 0;
}

这段代码实现了一个简单的图书管理系统,用户可以选择添加图书或显示所有图书的功能。图书被存储在一个结构体数组中,用户可以根据自己的需求扩展更多功能,比如删除图书、搜索图书等。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fec38AzsICAFWBlA.html

推荐文章

  • c语言浮点型数据怎么表示

    在C语言中,浮点型数据可以通过以下方式表示: 单精度浮点型(float):使用关键字float来声明,可以存储小数点后6位有效数字。例如:float num = 3.14; 双精度浮...

  • c语言定义字符串的方法是什么

    在C语言中,有多种方法可以定义字符串。 使用字符数组:可以使用字符数组定义字符串。例如: char str[] = "Hello, world!"; 在这个例子中,字符数组str会自动分...

  • c语言字符型变量的赋值规则是什么

    C语言字符型变量的赋值规则是可以直接赋值一个字符给字符型变量,也可以使用ASCII码来赋值。例如:
    char ch1 = 'A'; // 直接赋值一个字符'A'给变量ch1

  • c语言怎么获取文件指针位置

    在C语言中,可以使用ftell函数来获取文件指针的位置。ftell函数的原型如下:
    long int ftell(FILE* stream); 其中,stream是一个指向已经打开的文件的指针。...

  • Java正则表达式基础语法是什么

    Java正则表达式基础语法如下: 普通字符:普通字符包括大小写字母、数字和一些特殊字符,例如"abc123"。
    元字符:元字符是一些具有特殊含义的字符,需要进行...

  • MySQL中replace into与replace有什么区别

    在MySQL中,REPLACE INTO 和 REPLACE 是两种不同形式的替换数据操作。
    REPLACE INTO 是一种将新数据插入到表中,如果表中已经存在相同的主键或唯一索引,则...

  • c语言10个经典小程序

    Hello World #include int main() { printf("Hello, World!\n"); return 0;
    } 计算两数之和 #include int main() { int num1 = 5, num2 = 10; int sum = nu...

  • DOS批处理命令For怎么使用

    FOR命令可以用于在批处理脚本中执行一个指定的命令多次,或者对一组文件进行操作。下面是一些FOR命令的用法: 遍历目录中的文件: FOR %i IN (C:\path\to\files\...