admin管理员组文章数量:1532772
2024年1月5日发(作者:)
C语言程序设计实验及代码
一、实验介绍
本实验旨在通过C语言编程实践,培养学生的程序设计能力。通过完成以下实验内容,学生将会加深对C语言的理解,掌握基本的编程技巧和方法,并能够编写简单的C语言程序。
二、实验内容
1.实验一:实现一个简单的计算器程序
编写一个简单的计算器程序,能够进行简单的加减乘除运算。要求用户输入两个数字和操作符(+、-、*、/),然后输出计算结果。
实验提示:可以使用switch语句来实现根据操作符执行相应的运算。
2.实验二:实现一个学生成绩管理系统
编写一个学生成绩管理系统程序,能够添加学生信息、显示学生信息、计算学生平均成绩等功能。要求使用结构体来保存学生信息,并使用数组来存储多个学生的信息。
实验提示:可以使用循环来实现多次添加学生信息的功能。可以使用指针来操作结构体数组。
3.实验三:实现一个简单的图书管理系统
编写一个图书管理系统程序,能够添加图书信息、显示图书信息、查询图书信息等功能。要求使用结构体来保存图书信息,并使用链表来存储多本图书的信息。
实验提示:可以使用链表的插入和删除操作来实现添加和删除图书的功能。通过遍历链表来显示和查询图书的信息。
三、实验代码示例
1.实验一代码示例:
```c
#include
int main
float num1, num2; //用于存储用户输入的两个数字
char op; //用于存储用户输入的操作符
float result; //用于存储计算结果
printf("请输入两个数字和一个操作符(+、-、*、/):");
scanf("%f %f %c", &num1, &num2, &op);
switch(op)
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
case '/':
if(num2 != 0)
result = num1 / num2;
else
printf("除数不能为0!n");
return 0;
}
break;
default:
printf("操作符输入错误!n");
return 0;
}
printf("计算结果:%fn", result);
return 0;
```
2.实验二代码示例:
```c
#include
#define MAX_STUDENT 100 //定义最大学生数量
struct Student
int id; //学号
char name[20]; //姓名
float score; //成绩
};
void addStudent(struct Student *students, int *count)
if(*count >= MAX_STUDENT)
printf("已达到学生数量上限!n");
return;
}
printf("请输入学生的学号、姓名和成绩:");
scanf("%d %s %f", &(students[*count].id),
students[*count].name, &(students[*count].score));
(*count)++;
void showStudent(struct Student *students, int count)
int i;
if(count == 0)
printf("暂无学生信息!n");
return;
}
printf("学号t姓名t成绩n");
for(i = 0; i < count; i++)
printf("%dt%st%fn", students[i].id, students[i].name,
students[i].score);
}
float calculateAverage(struct Student *students, int count)
int i;
float sum = 0;
if(count == 0)
return 0;
for(i = 0; i < count; i++)
sum += students[i].score;
}
return sum / count;
int main
struct Student students[MAX_STUDENT]; //保存学生信息的数组
int count = 0; //学生数量
int choice;
while(1)
printf("n学生成绩管理系统n");
printf("1.添加学生信息n");
printf("2.显示学生信息n");
printf("3.计算平均成绩n");
printf("0.退出n");
printf("请输入对应操作的序号:");
scanf("%d", &choice);
switch(choice)
case 1:
addStudent(students, &count);
break;
case 2:
showStudent(students, count);
break;
case 3:
printf("平均成绩:%fn", calculateAverage(students, count));
break;
case 0:
return 0;
default:
printf("输入无效的序号!n");
break;
}
}
return 0;
```
3.实验三代码示例:
```c
#include
#include
#include
struct Book
char name[50]; //书名
float price; //价格
struct Book *next; //指向下一本书的指针
};
struct Book *head = NULL; //链表的头指针
void addBook
struct Book *newBook;
char name[50], author[20];
float price;
newBook = (struct Book *)malloc(sizeof(struct Book));
scanf("%s %s %f", name, author, &price);
strcpy(newBook->name, name);
strcpy(newBook->author, author);
newBook->price = price;
newBook->next = head;
head = newBook;
void showBooks
struct Book *p;
if(head == NULL)
printf("暂无图书信息!n");
return;
}
p = head;
while(p != NULL)
printf("%st%st%fn", p->name, p->author, p->price);p = p->next;
}
void searchByName
struct Book *p;
char name[50];
if(head == NULL)
printf("暂无图书信息!n");
return;
}
printf("请输入要查询的图书的书名:");
scanf("%s", name);
p = head;
while(p != NULL)
if(strcmp(p->name, name) == 0)
printf("%st%st%fn", p->name, p->author, p->price);
return;
}
p = p->next;
}
printf("未找到该图书!n");
int main
int choice;
while(1)
printf("n图书管理系统n");
printf("1.添加图书信息n");
printf("2.显示图书信息n");
printf("3.查询图书信息n");
printf("0.退出n");
printf("请输入对应操作的序号:scanf("%d", &choice);
switch(choice)
case 1:
addBook(;
");
break;
case 2:
showBooks(;
break;
case 3:
searchByName(;
break;
case 0:
return 0;
default:
printf("输入无效的序号!n");
break;
}
}
return 0;
```
以上是三个C语言程序设计实验的相关介绍和代码示例。通过完成这些实验,学生将能够掌握基本的C语言编程技巧和方法,并能够编写简单的C语言程序。同时,通过实践的过程,学生还能够加深对C语言的理解,提高自己的程序设计能力。希望这些实验对大家的学习有所帮助!
版权声明:本文标题:C语言程序设计实验及代码 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1704420279a89933.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论