Linux课程设计
- 格式:doc
- 大小:281.00 KB
- 文档页数:19
一、引言(简要说明设计题目的目的、意义、内容、主要任务等)
1.目的
1)巩固和复习c语言的基础知识,进一步加深对c语言的理解和掌握
2)课程设计提供了一个既动脑又动手,独立实践的机会,将课本上得理论知识和实际
3)有机的结合起来,锻炼学生的分析解决实际问题的能力,提高学生适应实际,实践编程的
4)能力;
5)熟悉linux的基本操作,并且能够在linux环境下编写c语言程序、
6)培养在项目开发中团队合作精神,创新意识及能力
2.意义
1)综合应用c程序设计课程的理论基础和知识,掌握程序设计的一般方法,树立正确的设计思想,培养了分析问题和解决问题的能力
2)学会了从实际的要求出发,合理的选择算法,正确的使用测试方法,培养了程序设计能力
3)学会运用帮助和查阅有关技术资料的能力。
3.内容
程序一:
制作一个可供小学数学运算的程序:10以内加减法,能根据输入题数出题,判断题是
否正确,最后计算分数。例如:请输入题数:2
1+5=
2+4=
由用户输入答案,程序根据答案判断正误,输出正确率(%)。并用make工程管理器编
译。(注意分割文件,可参考第一题的提示。)编写makefile文件。
程序二:
设计一个程序,要求新建一个文件“hello”,利用write函数将“Linux下c软件设
计”字符串写入该文件。
程序三:
利用命名管道实现两个进程间的通信。
程序四:
服务器通过socket连接后,向客户端发送字符串“连接上了”。在服务器上显示客
户端的IP地址或域名。
4.主要任务
1)分析题目的要求,
2)总结各个程序所涉及的相关知识点
3)各种算法的涉及
4)画出部分模块的流程图
5)程序代码的设计与实现
二、正文(课程设计的主要内容,包括实验与观测方法和结果、仪器设备、计算方
法、编程原理、数据处理、设计说明与依据、加工整理和图表、形成的论点和导出的结论等。正文内容必须实事求是、客观真切、准确完备、合乎逻辑、层次分明、语言流畅、结构严谨,符合各学科、专业的有关要求。)
程序一:
源代码:
start.c文件:
该文件主要处理算法和逻辑,学生开始答题,运算逻辑的和结果
以及答题结果。
#include
#include
void print_random(int count, int *a)
{
int ii = 1;
int i=*a;
a++;
int j=*a;
a++;
int c;
int total=0;
int d=0;
int ok = 0;
printf("本题库中只有%d题,请认真答题,每题5分\n",count);
while(1){
printf("第%d题:", ii);
printf("%d ", i);
printf("+");
printf("%d ", j);
printf("=?");
printf("\n");
printf("请您输入结果:");
scanf("%d",&c);
d=i+j;
if(c==d){
printf("正确\n");
ok++;
total+=5;
}else{
printf("错误%d\n",d);
total+=0;
}
if(ii==count){
break;
}
ii++;
i=*a;
a++;
j=*a;
a++;
d=0;
}
printf("正确率为:%d%\n",ok*100/count);
printf("您最后的总分是:%d",total);
printf("\n");
}
main.c 文件:
该文件主要包含主函数,逻辑的控制,以及学生确定题的数量
还包括生成题库的函数。
#include
#include
void gen_random(int count,int *a)
{
int i;
for (i = 0; i < count*2; i++){
*a = rand() % 10;
a++;
}
}
int main(void)
{
printf("请您输入数量:");
int c;
scanf("%d",&c);
int a[200];
gen_random(c,a);
printf("%d",a[2]);
print_random(c,a);
return 0;
}
Makefile文件:
main:start.o main.o
gcc start.o main.o -o xxlx
isDelta.o:start.c
gcc start.c -c
main.o:main.c
gcc main.c -c
运行结果图:
程序二:
程序描述:此程序主要实现了文件的打开,关闭,读取和写入。
1.creat
函数 creat 的作用是在目录中建立一个空文件,该函数的使用方法如下所示。
int creat(char * pathname, mode_t mode);
函数的参数 pathname 表示需要建立文件的文件名和目录名,mode 表示这个文件的
权限。
文件权限的设置见本章第一节所述。文件创建成功时返回创建文件的编号,否则返
回-1。
使用这个函数时,需要在程序的前面包含下面三个头文件。
#include
#include
#include
如果创建文件不成功,可用 errno 捕获错误编号然后输出。creat 函数可能发生的
错误如
下所示。
EEXIST:参数 pathname 所指的文件已存在。
EACCESS:参数 pathname 所指定的文件不符合所要求测试的权限。