嵌入式C语言开发技

2019-09-01 21:14

目 录

实验一 Linux编程环境实验(4学时) .................... 1 实验二 循环程序设计(2学时) .......................... 4 实验三 分支程序设计(2学时) .......................... 5 实验四 实验五 实验六 Linux实验七 实验八 实验九 实验十 Linux

函数实验(2学时) .............................. 6 指针实验(2学时) .............................. 7 常见数据结构实验(2学时) ................ 8 文件读写实验(2学时) .......................... 9 多线程实验(2学时) ........................... 10 网络编程实验(2学时) ......................... 11 应用程序的编写(4学时) ................. 12

实验一 Linux编程环境实验(4学时)

实验目的:

1.掌握Linux操作系统的基本命令,能对文件、文件夹进行相应的操作; 2.熟练掌握Linux下编辑器的使用;

3.学会使用编译器GCC对源程序进行编译; 4.掌握调试程序GDB的使用以及调试过程;

实验内容:

1.Linux常用命令;

1) 以root账号登陆Linux系统,创建新用户:student 2) 更改该用户密码为:123456 3) 切换到student账户

4) 查看用户主目录(/home/student)下的目录、文件信息 5) 创建新目录/home/student/source

6) 查看source的属性,并重新设置其权限为777

7) 查看/usr/include目录下所有后缀为.h的文件,并将它们都复制到

/home/student/souce目录下

8) 在用户主目录下创建新目录destination,并设置其权限为777 9) 将source目录下的文件都移动到destination目录下 10) 删除destination目录下的所有文件

11) 用man命令查看rename的使用手册(还有哪些方法可以获得命令帮

助?)

12) 重命名source目录为haha

13) 删除haha目录和destination目录

2.Vi编辑器的使用;

熟练完成vimtutor中的练习;(写完成以后的体会,字数不限!)

3.GCC编译器的使用;

1) 用gcc带不同参数编译下列C程序,并观察每次的运行结果。

#include int main(void) {

printf(“hello linux!\\n”); return 0; }

2) 用编辑器创建main.c, compute.c, input.c, compute.h, input.h和

main.h文件。下面是它们的内容。注意compute.h和input.h文件仅包含了compute和input函数的声明但是没有定义。定义部分在

1

compute.c和input.c文件中。main.c包含的是两条显示给用户的提示信息。

$cat compute.h

/*compute函数的声明原形*/ double compute(double, double);

$cat input.h

/*input 函数的声明原形*/ double input(char *);

$cat main.h

/*声明用户提示*/

#define PROMPT1 \请输入x的值:\#define PROMPT2 \请输入y的值:\

$cat compute.c #include #include #include \

double compute(double x, double y) { return(pow((double)x, (double)y)); }

$cat input.c

#include #include \double input(char *s) { float x; printf(\ scanf(\ return(x); }

$cat main.c

#include #include \#include \#include \int main(void) { double x, y;

2

printf(\本程序从标准输入获取x和y的值并显示x的y次方.\\n\ x = input(PROMPT1); y = input(PROMPT2); printf(\的y次方是:%6.3f\\n\ retun 0; }

创建上述三个源文件和相应的头文件,用gcc编译器,生成power可执行文件,并运行power程序。给出完成上述工作的步骤和程序运行结果。注意:在生成可执行代码时不要忘了链接上数学库。

创建makefile文件,使用make命令,生成power可执行文件,并运行power程序。给出完成上述工作的步骤和程序运行结果。

4.GDB调试器的使用;

使用GDB调试器调试上述程序,给出调试的步骤。

5.make与makefile实验练习

本实验是关于makefile内容的,不需要在计算机上进行编程运行,只需要回答下面这些问题。

CC = gcc

OPTIONS = -O3 -o

OBJECTS = main.o stack.o misc.o SOURCES = main.c stack.c misc.c HEADERS = main.h stack.h misc.h polish:main.c$(OBJECTS)

$(CC)$(OBJECTS) power $(OBJECTS) -lm main.o:main.c main.h misc.h stack.o:stack.c stack.h misc.h misc.o:misc.c misc.h

1) 所有宏定义的名字; 2) 所有目标文件的名字; 3) 每个目标的依赖文件;

4) 画出makefile对应的依赖关系树; 5) 生成每个目标文件所需要执行的命令;

6) 生成main.o stack.o 和misc.o时会执行哪些命令,为什么?

3

实验二 循环程序设计(2学时)

实验目的:

1.熟练掌握Linux下编辑器的使用;

2.学会使用编译器GCC对源程序进行编译; 3.熟练掌握循环语句的使用; 4.掌握循环程序的设计方法;

实验题目:

1.求s = a + aa +aaa + aaaa + aa…a的值,其中a是一个数字。例如2 + 22 + 222 +2222 +22222(此时共有5个数相加), 几个数相加由键盘控制。

2.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

3.判断101~200之间有多少个素数,并输出所有素数。

4.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

5.将一个正整数分解质因数。例如:输入90,打印出90 = 2×3×3×5。

4


嵌入式C语言开发技.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:夜总会服务流程细节

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: