c语言开发的小程序

0 2025-01-22 08:28:23

C语言是一种高级编程语言,具有结构化、模块化和可移植性等特点,因此在计算机编程中应用广泛。下面介绍一些通过C语言实现的小程序,以及它们的原理和详细介绍。

1. 计算器程序

计算器程序是C语言编程入门时经典的小程序之一。其实现原理是通过从控制台输入两个数和一个符号,然后计算结果并打印输出。

以下是计算器程序的详细介绍:

```c

#include

int main()

{

float num1, num2, result;

char op;

printf("请输入合法的算数表达式(如1 + 2):\n");

scanf("%f %c %f",&num1, &op, &num2);

switch(op)

{

case '+':

result = num1 + num2;

break;

case '-':

result = num1 - num2;

break;

case '*':

result = num1 * num2;

break;

case '/':

if(num2 == 0)

printf("除数不能为0\n");

else

result = num1 / num2;

break;

default:

printf("输入的运算符不合法\n");

}

printf("计算结果是: %f\n", result);

return 0;

}

```

该程序首先要求用户输入一个算数表达式,其中包含两个数和一个运算符,例如"1 + 2"。然后,使用scanf函数读取用户输入的数字和运算符,并使用switch语句执行相应的运算。

2. 猜数字游戏

猜数字游戏也是一种经典的小程序,其实现原理是使用srand和rand函数生成在一定范围内的随机数,然后用户猜测这个随机数的值,程序提示用户是猜大了还是猜小了,直到用户猜中为止。

以下是猜数字游戏的详细介绍:

```c

#include

#include

#include

int main()

{

int num, guess, count = 0;

srand(time(NULL));

num = rand() % 100 + 1;

printf("猜数字游戏开始!\n");

do

{

printf("请输入你猜测的数字(1-100之间):");

scanf("%d", &guess);

count++;

if (guess > num)

printf("猜大了!\n");

else if (guess < num)

printf("猜小了!\n");

else

printf("恭喜你猜对了!\n");

} while (guess != num);

printf("你一共猜了%d次!\n", count);

return 0;

}

```

该程序首先使用srand和rand函数生成在1-100范围内的随机数。然后,使用do-while循环,要求用户输入一个数字,然后判断是否与随机数相等。如果不相等,程序提示用户继续猜,同时告知用户猜的数字是否大于或小于随机数。如果用户猜中了,程序提示用户猜对了,并告知用户一共猜了多少次。

3. 简单图书管理系统

图书管理系统是一种针对小型图书馆进行管理的软件,实现了图书的分类、入库、借阅、归还等功能。这里介绍的是一个简单的图书管理系统,其实现原理是通过使用结构体存储图书信息,并实现相应的操作函数。

以下是简单图书管理系统的详细介绍:

```c

#include

#include

#include

struct Book

{

char name[50]; // 书名

char author[50]; // 作者

int year; // 出版时间

int stock; // 库存量

};

void add_book(struct Book[], int*);

void borrow_book(struct Book[], int);

void return_book(struct Book[], int);

void display_book(struct Book[], int);

int main()

{

int n = 0;

struct Book library[50];

int choice;

do

{

printf("\n欢迎使用图书管理系统!\n\n");

printf("1-添加图书 2-借阅图书 3-归还图书 4-查看藏书 0-退出系统\n");

printf("请输入选项:\n");

scanf("%d", &choice);

switch(choice)

{

case 1:

add_book(library, &n);

break;

case 2:

borrow_book(library, n);

break;

case 3:

return_book(library, n);

break;

case 4:

display_book(library, n);

break;

case 0:

printf("\n谢谢使用!\n");

break;

default:

printf("\n选项不合法,请重新输入!\n");

break;

}

} while (choice != 0);

return 0;

}

void add_book(struct Book library[], int *p)

{

printf("\n添加图书:\n");

printf("请输入书名:");

scanf("%s", library[*p].name);

printf("请输入作者:");

scanf("%s", library[*p].author);

printf("请输入出版时间:");

scanf("%d", &library[*p].year);

printf("请输入库存量:");

scanf("%d", &library[*p].stock);

*p += 1;

printf("\n添加成功!\n");

}

void borrow_book(struct Book library[], int n)

{

int i, found = 0;

char bname[50];

printf("\n借阅图书:\n");

printf("请输入要借阅的书名:");

scanf("%s", bname);

for (i = 0; i < n; i++)

{

if (strcmp(library[i].name, bname) == 0)

{

found = 1;

if (library[i].stock > 0)

{

library[i].stock--;

printf("\n借阅成功!\n");

}

else

printf("\n库存不足,无法借阅!\n");

}

}

if (found == 0)

printf("\n未找到该图书!\n");

}

void return_book(struct Book library[], int n)

{

int i, found = 0;

char bname[50];

printf("\n归还图书:\n");

printf("请输入要归还的书名:");

scanf("%s", bname);

for (i = 0; i < n; i++)

{

if (strcmp(library[i].name, bname) == 0)

{

found = 1;

library[i].stock++;

printf("\n归还成功!\n");

}

}

if (found == 0)

printf("\n未找到该图书!\n");

}

void display_book(struct Book library[], int n)

{

int i;

printf("\n图书库存:\n");

for (i = 0; i < n; i++)

{

printf("书名:%s 作者:%s 出版时间:%d 库存量:%d\n", library[i].name, library[i].author, library[i].year, library[i].stock);

}

}

```

该程序定义了一个结构体Book,表示一个图书的信息,包括书名、作者、出版时间和库存量。程序通过开辟一个数组来存储多本图书,同时实现了添加图书、借阅图书、归还图书和查看库存的操作函数。

以上就是通过C语言实现的三个小程序的介绍。这些小程序不但能够帮助初学者熟悉C语言的相关知识,而且能够为学习者提供一种将理论知识应用于实际项目的机会。

上一篇:c语言开发第一个小程序
下一篇:c语言程序设计怎样开发小程序
相关文章