当前位置:文档之家› linux上机实习报告

linux上机实习报告

linux上机实习报告
linux上机实习报告

目录

Linux 第一次上机(运行环境RedHat) (1)

调试运行CD唱片应用程序 (1)

运行过程 (1)

心得体会 (3)

编写shell脚本,求1到100的和 (3)

运行过程 (3)

源代码 (4)

编写shell脚本,从键盘输入两个数,求这两个数的和 (4)

运行过程 (4)

源代码 (5)

等待特定用户登录,每30秒确认一次 (5)

运行过程 (5)

源代码 (6)

找出系统中当前消耗磁盘容量最大的前10个用户,并向他们发送警告邮件 (6)

运行过程 (6)

源代码 (8)

查找输入文件的路径 (8)

运行过程 (8)

源代码 (9)

Linux 第二次上机(运行环境RedHat) (9)

定制自己的ls命令。提供至少三种带参数的执行方式 (9)

运行过程 (9)

源代码 (11)

调试编译串行口通信程序p6.5.c (16)

运行过程 (16)

Linux 第三次上机(运行环境RedHat,CentOS) (16)

创建一个系统监听守护进程,一旦接收到其他进程发来的信号,马上给出报告 (16)

运行过程 (16)

源代码 (18)

分别利用本地socket套接字和INTENET套接字实现进程间文件传输 (20)

本地socket套接字运行过程 (20)

本地socket套接字服务器server1.c源代码 (22)

本地socket套接字客户端client1.c源代码 (23)

INTENET套接字运行过程 (25)

INTENET套接字服务器server2.c源代码 (28)

INTENET套接字客户端client2.c源代码 (29)

感谢与收获 (30)

Linux 第一次上机(运行环境RedHat) 调试运行CD唱片应用程序

运行过程

图表1第一步,使用./CD 命令运行CD脚本

图表2进入选项界面

图表3增加CD

图表4查找CD

图表5查询数目

图表6退出

心得体会

通过运行书上的CD唱片应用程序,进一步地了解到shell编程的方法,以及编写程序的思路。

编写shell脚本,求1到100的和

运行过程

图表7使用./sum1to100运行

图表8使用cat sum1to100查看源代码

编写shell脚本,从键盘输入两个数,求这两个数的和运行过程

图表9使用./sumAandB 运行

图表10使用cat sumAandB查看源代码

等待特定用户登录,每30秒确认一次

运行过程

已知特定用户是zzx,我首先让root用户登录并运行程序,可以发现每隔30s提醒一次

图表11使用./checkuser运行

当我切换到zzx用户,并再次运行程序,可得如下结果

图表12使用cat checkuser查看代码

找出系统中当前消耗磁盘容量最大的前10个用户,并向他们发送警告邮件

运行过程

由于权限等问题,我们使用root用户运行程序

图表13使用./mymail运行

运行完毕后,我们就可以查看邮件了

图表14 root用户收到的邮件

图表15 zzx用户收到的邮件

图表16 t1用户收到的邮件源代码

图表17 使用cat命令查看查找输入文件的路径

运行过程

由于权限的问题,我们使用root用户运行程序

图表18 使用./route运行,并按照要求输入文件名

源代码

图表19 使用cat route查看源代码

Linux 第二次上机(运行环境RedHat) 定制自己的ls命令。提供至少三种带参数的执行方式运行过程

图表20 使用./ls 运行不带参数ls

图表21使用./ls -l 运行带参数-l 的ls

图表22 使用./ls -a运行带参数-a的ls

图表23使用./ls -al 运行带参数-al的ls 源代码

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

int do_ls(char *dir,char *filename,int lflag)

{

int n;

struct stat buf;

char out[100];

struct passwd *pw;

struct group *gr;

struct tm *t;

if(lflag == 0)

{

printf("%s\t",filename);

return 0;

}

if(lstat(dir,&buf)<0)

{

fprintf(stderr,"stat error:%s\n",strerror(errno));

return -1;

}

switch(buf.st_mode & S_IFMT) {

case S_IFREG:

printf("-");

break;

case S_IFDIR:

printf("d");

break;

case S_IFCHR:

printf("c");

break;

case S_IFBLK:

printf("b");

break;

case S_IFIFO:

printf("p");

break;

case S_IFLNK:

printf("l");

break;

case S_IFSOCK:

printf("s");

break;

}

for(n=8;n>=0;n--)

{

if(buf.st_mode&(1<

{

switch(n%3)

{

case 2:

printf("r");

break;

case 1:

printf("w");

break;

case 0:

printf("x");

break;

default:

break;

}

}

else

{

printf("-");

}

}

printf(" %d",buf.st_nlink);

pw = getpwuid(buf.st_uid);

printf(" %s",pw->pw_name);

gr = getgrgid(buf.st_gid);

printf(" %s",gr->gr_name);

printf(" %ld",buf.st_size);

t = localtime(&buf.st_atime);

printf(" %d-%d-%d %d:%d"

,t->tm_year+1900

,t->tm_mon+1

,t->tm_mday

,t->tm_hour

,t->tm_min);

printf(" %s ",filename);

if(S_ISLNK(buf.st_mode))

{

printf(" -> ");

if(readlink(filename,out,100)==-1)

{

//printf("readlink error\n");

}

printf("%s",out);

}

printf("\n");

return 0;

}

int ls_prepare(char *w,int aflag,int lflag) {

struct stat buf;

char name[100];

DIR *dir;

struct dirent *pdr;

if(lstat(w,&buf)<0)

{

fprintf(stderr,"stat error:%s\n",strerror(errno));

return -1;

}

if(S_ISDIR(buf.st_mode))

{

dir = opendir(w);

while ((pdr = readdir(dir))!=NULL)

{

if(aflag==0)

{

if(pdr->d_name[0]=='.')

continue;

memset(name,0,100);

strcpy(name,w);

strcat(name,"/");

strcat(name,pdr->d_name);

do_ls(name,pdr->d_name,lflag);

}else

{

memset(name,0,100);

strcpy(name,w);

strcat(name,"/");

strcat(name,pdr->d_name);

do_ls(name,pdr->d_name,lflag);

}

}

closedir(dir);

}else

{

do_ls(w,w,lflag);

}

return 0;

}

int main(int argc,char **argv)

{

int aflag =0;

int lflag =0;

char c;

int i;

while((c = getopt(argc,argv,"al"))!=-1)

{

switch(c)

{

case 'a':

aflag =1;

break;

case 'l':

lflag =1;

break;

default:

break;

}

}

if(argc == optind )

{

ls_prepare("./",aflag,lflag);

}

else

{

for(i=optind;i

ls_prepare(argv[i],aflag,lflag);

}

printf("\n");

return 0;

}

调试编译串行口通信程序p6.5.c

运行过程

由于权限问题,我们在root用户下运行程序

图表24 使用./mytrunk不带参数运行

图表25使用./mytrunk /dev/ttyS0 0带参数运行

Linux 第三次上机(运行环境RedHat,CentOS)

创建一个系统监听守护进程,一旦接收到其他进程发来的信号,马上给出报告

运行过程

图表26首先运行守护进程之后查看当前进程

图表27可以发现守护进程-jincheng在后台运行,且PPID=1,PID=4085

图表28可以发现守护进程向test.txt发送了start

图表29向守护进程发送终止信号,终止守护进程

图表30可以发现后台运行的守护进程没了

图表31可以发现守护进程又向test.txt发送了end

图表32具体查看test.txt

图表33具体查看test.txt的内容源代码

#include

#include

#include

#include

#include

#include

#include

/* Daemonize myself. */

int fd1;

void sigintHandler(int sig)

{

if(sig==SIGTERM)

{

write(fd1,"end\n",5);

exit(0);

}

}

int daemon (int nochdir, int noclose)

{

pid_t pid;

pid = fork ();

/* In case of fork is error. */

if (pid < 0)

{

perror ("fork");

return -1;

}

/* In case of this is parent process. */

if (pid != 0)

exit (0);

/* Become session leader and get pid. */ pid = setsid();

if (pid < -1)

{

perror ("setsid");

return -1;

}

/* Change directory to root. */

if (! nochdir)

chdir ("/");

/* File descriptor close. */

if (! noclose)

{

int fd;

fd = open ("/dev/null", O_RDWR, 0);

if (fd != -1)

{

dup2 (fd, STDIN_FILENO);

dup2 (fd, STDOUT_FILENO);

dup2 (fd, STDERR_FILENO);

if (fd > 2)

close (fd);

}

}

umask (0027);

return 0;

第一次上机作业答案

2018-2019第一学期土木文检课作业(一) 1.试用图书馆书目检索系统查出如下题名的中图法分类号和检索结果条数,再用所查出的分类号分别检索中文图书和西文图书的结果条数。 图书条数:_473______,西文图书条数:___64____; (2)题名:克隆,在图书馆位置:_北四楼中文自科图书借阅室/南六楼中文自科参考书阅览室_______ ,中图分类号:_Q785_____,中文图书条数:__70______,西文图书条数:_________; (3)题名:文献编目,在图书馆位置:_南五楼中文社科参考书阅览室\北三楼中文社科图书借阅室____ ,中图分类号:__ G254.3 __,中文图书条数:__170__,西文图书条数:___9_____; (4)题名:古生物学,在图书馆位置:__南六楼中文自科参考书阅览室_______ ,中图分类号:__Q91____,中文图书条数:_317_______,西文图书条数:____15______; (5)题名:英语写作,在图书馆位置:__北三楼中文社科图书借阅室__ ,中图分类号:__H315____,中文图书条数:_3511__,西文图书条数:____679__ [填空题] * 2.用图书馆主页的《中图分类法》“生物化学”的分类号,并写出以上各级分类号和类目(参考教材11页)。[填空题] * Q生物科学(一级类目) Q5生物化学(二级类目)

3.根据要求填写下列各题。 (1)请在图书馆馆藏目录中找出2015年《细胞生物学》有几个版本?_2_;按照正确著录格式著录这几本图书: [1]左伋,刘艳平.细胞生物学[M].北京:人民卫生出版社,2015 [2]李瑶.细胞生物学[M].北京:化学工业出版社,2015 ⑵写出以下期刊的分类号和在图书馆的位置。 ①《基因组学与应用生物学》分类号:_Q343.1 _____ ;位置:南三楼自科期刊阅览室。 ②《青年文摘》分类号:__D432 _____ ;位置:南二楼社科报刊阅览室。 ③《生物工程学报》分类号:___Q_______ ;位置:__南三楼自科期刊阅览室_________。 ④《中国民商》分类号:___ F279.2 ____ ;位置:___南二楼社科报刊阅览室_____ 。 ⑤《生态毒理学报》分类号:__X3_____ ;位置:__南三楼自科期刊阅览室_______ 。[填空题] *

单片机第一次实验报告

单片机第一次实验报告 姓名: 学号: 班级:

实验报告 课程名称:微机原理与接口技术指导老师:学生姓名:学号:专业:自动化日期:20140327 地点: 实验一实验名称 1. 实验目的和要求 1.掌握keil软件和STC-ISP 软件的使用方法 2.点亮第一个发光管. 3.点亮1,3,5,7发光管 4.尝试让第一个发光管闪烁. 2. 主要仪器设备 1.一台pc机 2.一个单片机开发板 点亮第一个发光管. #include void main () { P1 &=0xFE; while(1) } 点亮1,3,5,7发光管 void main () { P1 &=0xAA;

while(1) } 尝试让第一个发光管闪烁. #include #define uint unsigned int #define uchar unsigned char void delay_ms(uint timer) { uchar j = 0; while(timer--) { for(j = 124;j>0;j--) { ; } } } void main (void) { while(1) { P1 &=0xFE; delay_ms(100); P1 |=0x01; delay_ms(100); } }

实验心得:这第一次试验,没准备,所以这次实验一上机啥都不会,也不知道该做啥,在同学的帮助下安装了程序和驱动,代码也是问同学才明白的。第一个代码,通过很顺利,但是测试第二个代码的时候电脑无法连接板子,后来重新安装了驱动才就能连接了。虽然感觉还是好多不懂的,不过还是学到了一些东西,有一点成就感。

C语言实习报告

设计报告 一,实验目的: 通过上机实习,熟练掌握循环语句、选择语句、指针以及结构体的运用技巧。在实习中通过实际操作,编写程序,发现问题,最后解决问题,提升对c语言实用性的理解,在实践中巩固各知识点。 C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点,上机实习可以帮助我们更好地理解这种结构式的中级语言以及其各式各样的数据类型和高效率的运算程序,为我们进一步学习C++打下坚实基础。 同时,在实习过程中,通过互相发现问题,共同解决问题,不仅锻炼了我们的合作能力,而且也让我们发现了一些自己的个人误区以及其他人容易犯的错误,从而在今后的学习中更加谨慎,达到事半功倍的效果;通过询问老师,也让我们养成了不耻下问的好习惯,这将很有利于以后的学习。 闲乐-一个人闲。不如大家一块儿乐二,总体设计:

1,学生成绩排名 1,流程图: 假 <通过冒泡法对数组进行排序> <测试时由于循环语句循环次数的错误导致部分数据没有排序,修改FOR语言中的条件即可调试成功>

2,程序: #include<> int main() { i nt a[11],i,j,t,b,c,temp1,temp2,temp3;

赋 I 由0变到8执行9次循环 进行9-I 次比较 真 a[j]>a[I+I]假 输出a[0]到a[9] I I=0输 I=0I 赋I 由0变到n-1执行n 次循环 进行n-1-I 次比较 真 a[j]>a[I+I]假 输出a[0]到a[n-1] 输I=0 I 赋 输入 a I 由0变到n-1执行n 次循环 进行n-1-I 次比较 真 a[j]>a[I+I]假 Styl Style I 由0变到n-1执行n 次循环 进行n-1-I 次比较 真 a[j]

Linux实习报告

实习报告 --linux系统移植

目录 目录 (2) 1. 实习目的 (3) 2. 基础知识 (3) 2.1 硬件设备 (3) 2.2 linux系统的基础知识 (4) 2.2.1 linux系统简介 (4) 2.2.2 linux系统的基础命令 (6) 3. 实习内容 (11) 3.1 linux操作系统的安装与设置 (11) 3.2 linux开发环境的搭建与移植 (13) 3.2.1 开发环境搭建 (13) 3.2.2 系统编译 (14) 3.2.3 系统定制 (17) 3.2.2 linux系统的USB模块移植 (21) 3.3 基于硬件平台的应用 (23) 4. 结论 (29)

1. 实习目的 近年来,随着计算机技术、通信技术的迅速发展,特别是互联网的迅速普及和3C(计算机、通信、消费电子)合一的加速,微型化和专业化成为发展的新趋势,嵌入式系统的开发已经成为了信息产业的热点。基于ARM硬件平台及linux操作系统的嵌入式产品应用开发已成为主流。而在嵌入式开发过程中,针对目标平台的操作系统移植成为影响嵌入式产品开发进度的一个关键因素。 基于上述现状,本次实习主要是学习嵌入式开发的基础--linux系统的移植。主要的实习内容有: (1)linux操作系统的安装与设置:包括VMware的安装,linux操作系统的安装及设置; (2)linux开发环境的构建和移植:包括交叉编译工具的安装,x-loader及u-boot 的配置与编译,linux内核的配置与编译,文件系统的生成以及系统定制; (3)linux基本操作命令的使用; (4)基于硬件平台及linux移植的应用。 通过以上实习,初步掌握linux系统的一些基础知识以及linux系统移植的过程,为以后的进一步学习打下基础。 2.基础知识 2.1 硬件设备 DevKit8000评估套件是深圳市天漠科技有限公司推出的基于德州仪器(TI)OMAP3530处理器的评估套件。OMAP3530处理器集成600MHz的ARM Cortex-A8内核及430MHz的具有高级数字信号处理算法的DSP核,并提供了丰富的外设接口。DevKit8000外扩了CPU外设接口中的网口、S-VIDEO接口、音频输入输出接口、USB OTG、USB HOST、SD/MMC接口、串口、SPI接口、IIC接口、JTAG接口、CAMERA接口、TFT屏接口、触摸屏接口、键盘接口和总线接口,并扩展出了HDMI接口。 DevKit8000评估套件为开发者使用OMAP3530处理器提供了完善的软件开发平台,支持linux-2.6.28及WinCE 6.0操作系统,并包含完善的底层驱动程序,方便用户快速评估OMAP35x处理器、设计系统驱动及其定制应用软件,并提供有成熟的操作系统google android 及angstrom(GPE)的发布版本,DVI输出可达到720P的显示标准,方便用户体验OMAP3530处理器的强大的数据运算处理能力。 其功能模块图如下:

华中科技大学c++第1次上机作业

第二章上机实验 一、实验目的 ●学会编写简单的顺序C++程序。 ●掌握基本数据类型变量和常量的应用。 ●掌握运算符与表达式的应用。 ●掌握结构化程序设计基本控制结构的运用。 ●了解使用简单的输入输出。 ●了解头文件的作用。 ●熟悉Visual C++6.0的开发环境。学习用Visual C++6.0编写标准的C++控制台程 序。 二、实验容 1. 请按照下面步骤调试程序,了解程序调式的步骤。 知识点:调试Visual C++6.0开发环境使用(编辑、编译、连接、运行、调试) 1)启动Visual C++6.0开发环境 从“开始”菜单中选择“所有程序”,然后找到【Microsoft Visual Studio 6.0 | Microsoft Visual C++6.0】双击,显示Visual C++6.0开发环境窗口,如图2.1所示。 图2.1 操作系统中选择VC编译软件 2)创建一个项目

进入Microsoft Visual C++ 6.0集成开发环境后,选择【文件|新建】菜单项,弹出新建对话框。单击【工程】标签,打开其选项卡,在其左边的列表框中选择【Win32 Console Application 】工程类型,在【工程名称】文本框中输入工程名hello,在【位置】文本框中输入工程保存的位置,单击【确定】按钮,如图2.2 所示。 图2.2 创建新的应用程序界面 在弹出的对话框(如图2.3所示),选择【一个空工程】,单击【完成】按钮 图2.3 Win32 Console Application 弹出窗口 此时出现【新建工程信息】对话框,如图2.4 所示。该对话框中提示用户创建了一个空的控制台应用程序,并且没有任何文件被添加到新工程中,此时,工程创建完成。

《MATLAB与数值分析》第一次上机实验报告

电子科技大学电子工程学院标准实验报告(实验)课程名称MATLAB与数值分析 学生姓名:李培睿 学号:2013020904026 指导教师:程建

一、实验名称 《MATLAB与数值分析》第一次上机实验 二、实验目的 1. 熟练掌握矩阵的生成、加、减、乘、除、转置、行列式、逆、范数等运算 操作。(用.m文件和Matlab函数编写一个对给定矩阵进行运算操作的程序) 2. 熟练掌握算术符号操作和基本运算操作,包括矩阵合并、向量合并、符号 转换、展开符号表达式、符号因式分解、符号表达式的化简、代数方程的符号解析解、特征多项式、函数的反函数、函数计算器、微积分、常微分方程的符号解、符号函数的画图等。(用.m文件编写进行符号因式分解和函数求反的程序) 3. 掌握Matlab函数的编写规范。 4、掌握Matlab常用的绘图处理操作,包括:基本平面图、图形注释命令、 三维曲线和面的填充、三维等高线等。(用.m文件编写在一个图形窗口上绘制正弦和余弦函数的图形,并给出充分的图形注释) 5. 熟练操作MATLAB软件平台,能利用M文件完成MATLAB的程序设计。 三、实验内容 1. 编程实现以下数列的图像,用户能输入不同的初始值以及系数。并以x, y为坐标显示图像 x(n+1) = a*x(n)-b*(y(n)-x(n)^2); y(n+1) = b*x(n)+a*(y(n)-x(n)^2) 2. 编程实现奥运5环图,允许用户输入环的直径。 3. 实现对输入任意长度向量元素的冒泡排序的升序排列。不允许使用sort 函数。 四、实验数据及结果分析 题目一: ①在Editor窗口编写函数代码如下:

C语言实训作业1

《C语言通识教育》实训指导书 (第一次) (2学时) 何天成 2016年月日

前言 C 语言是现代最流行的通用程序设计语言之一,它既具有高级程序设计语言的优点,又具有低级程序设计语言的特点,既可以用来编写系统程序,又可以用来编写应用程序。因此,C 语言正在被迅速地推广和普及。上机实验是该课程教学的一个重要环节,因此要求学生做一定数量的上机实验。本指导书可增强同学上机实验的针对性。整个教学和实验中,采用VC++6.0 作为实验环境,强调学生切实培养动手实践能力,掌握调试程序的方法,通过调试理解C语言程序运行的过程以及C 语言的语法规则,为后续的课程设计,计算机等级考试及其他应用做好充分的准备。 本实验指导书通过大量的实例,循序渐进地引导学生做好各章的实验。共计约14次实训课,其中每一讲内容分1、2两次上课。每个实验内容结构如下: (1)实验学时 (2)实验目的 (2)预习要求 (4)实验内容 (5)实验注意事项 (6)思考题 其中思考题属于扩展应用部分,学生可以根据自己的学习情况选择完成。 在实验之前,要求学生对实验作好预习工作。在实验中,学生根据实验指导中的内容进行验证与总结,然后再去完成实验内容中安排的任务。一般要求准备好相关代码,实验课中最好以调试和讨论为主。 实验结束后,应及时先以电子版的形式填写实验报告,然后再以A4纸打印。第3次实训课上交前2次实训报告,要求源程序要以标准格式打印实验报告上都必须粘贴上每个程序的运行结果截图,并在每个程序的输出截图中添加上自己的姓名/学号/专业等信息,以表示程序执行结果确是自己调试,而不是copy 别人的运行结果。通报告具体内容可根据实验内容和实验要求进行增删。实验报告一般要求包含:(1)实验题目 (2)设计思路或算法分析 (3)流程图 (4)程序源代码 (5)程序运行结果及分析

Linux操作系统实习报告

桂林理工大学·信息科学与工程学院Linux操作系统报告 学院:信息科学与工程学院 班级:计算机2010-1 指导:王爱学 学号:3100717102 姓名:周杰 日期:2013年12月25日

【摘要】 Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。严格来讲,Linux这个词本身只表示Linux 内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于天才程序员林纳斯·托瓦兹。 Linux操作系统是UNIX操作系统的一种克隆系统,它诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX 类操作系统,并且使用人数还在迅猛增长。 【操作】 1.ls -l -a -F的区别 从图中可以看出,-a,-l,-F的特点: 单纯的ls命令不能显示隐藏文件,需要-a才能显示文件名以.开头的隐藏文件和文件夹 ls -l则可以以长格式显示文件信息 ls -F则是:在列出的文件目录名称后加一符号例如可执行文件加"*", 目录则加"/"

2. cd 命令 cd 这个命令是用来进出目录的它的使用方法和在dos下没什么两样,但和dos不同的是Linux 的目录对大小写是敏感的,如果大小写拼写有误,你的cd操作是成功不了的,另外cd 如果直接输入cd 后面不加任何东西会回到使用者自己的Home,目录假设如果是root,那就是回到/root,这个功能同cd ~是一样的 3. mkdir rmdir mkdir 命令用来建立新的目录如输入如下命令 mkdir zj 将在当前目录下新建一个zj 目录 rmdir 用来删除已建立的目录如输入如下命令 rmdir zj 将删除已存在的空目录zj 4. cp

C语言上机作业试题5套含答案

第一次上机作业(2014): 要求: ?独立完成,上机调试通过后上交 ?作业提交邮箱: ?邮件主题命名:班级学号姓名(第1次作业), 例如:电1301班2王鹏(第1次作业) ?以附件形式将每次作业的所有程序源程序压缩打包后提交,压缩文件命名格式同上。 ?程序必须采用缩进格式 1.大写字母转换成小写字母 从键盘输入一个大写英文字母,输出相应的小写字母。 例:输入G 输出g 2.求平方根 输入一个实数x,计算并输出其平方根(保留1 位小数)。 例:输入17 输出The square root of 17.0 is 4.1 3.温度转换 设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32) a)输入华氏温度(实型) b)输出的摄氏温度结果保留两位小数 例:Please input Fahrenheit temperature: 76.8 The corresponding Celsius temperature is 24.89 4. 计算旅途时间 输入二个整数time1 和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。 (输入的有效的时间范围是0000 到2359,不需要考虑出发时间晚于到达时间的情况。) 例:输入712 1411 (出发时间是7:12,到达时间是14:11) 输出The train journey time is 6 hours 59 minutes. 5. 数字加密 输入一个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。 例:输入1257 输出The encrypted number is 4601 思考题:你能否编程找出谁做的好事? 有四位同学中的一位做了好事,不留名,表扬信来了之后,校长问这四位是谁做的好事。 ?A说:不是我。 ?B说:是C。 ?C说:是D。 ?D说:他胡说。 已知三个人说的是真话,一个人说的是假话。现在要根据这些信息,找出做了好事的人。 第二次上机作业(2014): 要求: ?独立完成,程序必须采用缩进格式,上机调试通过后上交

matlab第一次实验报告

Matlab第一次实验报告 2012029010010 尹康 1. 编程实现以下数列的图像,用户能输入不同的初始值以及系数。并以x,y为坐标显示图像 x(n+1) = a*x(n)-b*(y(n)-x(n)^2); y(n+1) = b*x(n)+a*(y(n)-x(n)^2) 程序代码: n=input('input the number of pionts:'); a=input('input a:'); b=input('input b:'); x=[]; y=[]; x(1)=input('input x1:'); y(1)=input('input y1:'); %输入点数、初始值以及系数for i=2:n x(i)=a*x(i-1)-b*(y(i-1)-x(i-1)^2); y(i)=a*x(i-1)+b*(y(i-1)-x(i-1)^2); %根据已输入的数据进行迭代end figure;plot(x,y,'linewidth',2) axis equal %横纵坐标等比例 text(x(1),y(1),'1st point') %标记初始点 运行结果:

心得体会及改进:在输入某些数据时,所绘曲线可能是一条折线(如:n=5,a=b=x1=1,y1=2)甚至只有一个点(如:n=5,a=b=x1=y1=1),此时可能出现曲线与坐标轴重合或无法看到点的情况,为了更清晰地展现曲线,可以使线宽适当加宽并标记初始点。 2.编程实现奥运5环图,允许用户输入环的直径。 程序代码: 函数circle: %在指定的圆心坐标处,用指定颜色、宽度的线条绘出指定半径、圆心角的弧 function f=circle(r,x,y,color,linw,alp1,alp2) alp=linspace(alp1,alp2); X=r*cos(alp)+x; Y=r*sin(alp)+y; plot(X,Y,color,'linewidth',linw) end 主程序代码: r=input('input r:');

C语言上机实训

姓名:黄小龙学号:031540921 实验1 C语言开发环境及简单程序 设计 【实验题1-1】编写如下程序,计算并输出两个整数的和与积 【实验题1-2】输入并运行一个有自定义函数的程序,自定义函数MAX的功能是求两个整数中的大数并返回该大数。通过主函数调用MAX函数。

【实验题1-3】以下程序的功能:从键盘输入圆的半径,计算并输出圆的面积。请在程序的空白处填写适当内容。 【实验题1-4】以下程序的功能:从键盘输入两个整型变量A,B,然后交换它们的值并输出。请在程序的空白处填上适当的内容。

【实验题1-5】编写一个简单程序,由键盘任意输入三个数a,b,c, 计算并输出算式(a+b)/c 的计算结果。 实验2 基本数据类型与表达式计算【实验题2-1】以下程序可能存在错误,请上机调试并运行程序。

【实验题2-2】以下程序的功能:求解y=sin(根号ax)+ ln(a+x)。程序可能有多出错误,请上机调试并运行程序。 【实验题2-4】编写程序,从键盘输入华氏温度F,将其转化成摄氏温度C并输出(要求精确到小数点后两位)。转换公式为C=5/9*(F-32)。

【实验题2-5】设圆柱体的圆底半径radium=3.5cm,高height=4.6cm。分别计算并输出该圆柱体的总面积area和体积volume。要求输出结果精确到小数点后两位。 实验3 选择结构程序设计 【实验题3-1】以下程序的功能:将百分制成绩转为五级计分制。但未达到预期的结果,请查找原因并调试程序以实现程序功能。

【实验题3-2】以下程序的功能:若输入的是大写字母则转为小写字母输出;否则,输出信息“输入的不是一个大写字母”。请选择合适的内容填入程序空白处。

linux实训报告

实训报告 实训名称:Linux操作实训 学院:计算机学院 专业、班级09级计科1班 学号: 学生姓名: 指导教师: 2011 年12 月26 日

实训报告内容 一、实训名称 Linux操作实训 二、实训时间 第16-17周 三、实训地点 K4-508 四、实训目的 通过本实训,熟悉Linux操作系统以及操作系统当中的部分概念,掌握Linux控制台的基本命令和使用方法,能够对Linux操作系统的一些应用进行简单的配置。 实训的实施应使学生在以下几个方面有所收获: (1)加深对操作系统原理的理解,提高综合运用所学知识的能力。 (2)培养学生自主查阅参考资料的习惯,增强独立思考和解决问题的能力。 (3)通过该实训,使学生基本掌握如何使用Linux操作系统。 五、实训理论基础知识 1.什么是Linux操作系统? Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品 ! Linux以它的高效性和灵活性著称。Linux模块化的设计结构,使得它既能在价格昂贵的工作站上运行,也能够在廉价的PC机上实现全部的Unix特性,具有多任务、多用户的能力。Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用Windows NT一样,允许我们使用窗口、图标和菜单对系统进行操作。Linux

C语言实习报告

题目一线性结构的操作 1.用线性表的顺序存储(数组)保存数据 算法的N-S图或流程图

2.用线性表的链式存储(链表)保存数据 插入: r include<> #include<> typedef struct { int num; 出 1.输入 2.输出 3.写入\n"); } void main() { int choice;

LinkList l; l = (LinkList)malloc(sizeof(Node)); ey< r[j].key ) /* 寻找插入位置*/ { r[j+1]= r[j]; j=j-1; } r[j+1]=r[0]; /*将待插入记录插入到已排序的序列中*/ } } /* InsSort */ void BubbleSort(RecordType r[], int length ) /*对记录数组 r 做冒泡排序,length 为数组的长度*/ { int n,i,j; int change; RecordType x; n=length; change=TRUE; for ( i=1 ; i<= n-1 && change ;++i ) { change=FALSE; for ( j=1 ; j<= n-i ; ++j) if (r[j].key > r[j+1].key ) { x= r[j]; r[j]= r[j+1]; r[j+1]= x; change=TRUE;

} } /* BubbleSort */ void SelectSort(RecordType r[], int length) /*对记录数组 r 做简单选择排序,length 为数组的长度*/ { int i,j,k; int n; RecordType x; n=length; for ( i=1 ; i<= n-1; ++i) { k=i; for ( j=i+1 ; j<= n ; ++j) if (r[j].key < r[k].key ) k=j; if ( k!=i) { x= r[i]; r[i]= r[k]; r[k]=x; } } } /* SelectSort */ void sqrand(RecordType r[])ey = rand()%101; } } void out(RecordType r[]) {

《linux操作系统实训》总结报告

《linux操作系统实训》总结报告 班4 组姓名赵笑笑、何勇、王儒霖、宋泽琛、杨浩全文结束》》年12月2日目录 一、分组计划及评分表2 二、实训总结报告:4 (一)linux操作系统安装与基本配置4 (二)配置LINUX与windows共享资源7 (三)配置WEB服务器,发布网站12 (四)配置FTP服务器,上传资料19 (五)配置Webmin服务器33 (六)分析与总结(实训过程遇到的问题、解决方法、收获体会)40 一、分组计划及评分表分组准备及评分表班级60935组长赵笑笑项目小组编号4 一、项目名称: 二、项目小组的组成(任务分配、根据组员的表现确定其个人系数):编号姓名学号在项目小组中的任务个人贡献系数(0、0 – 1、0)1赵笑笑配置WEB服务器,制作一个简单的静态网页展示小组风貌及实训情况并发布到web服务器上2何勇配置实现linux与windows资源共享3王儒霖配置FTP服务器,将小组的相

关学习资料发布到网上供大家分享4宋泽琛组建LINUX局域网,在服务器上安装配置LINUX操作系统5杨浩在客户端,安装windows xp操作系统6 二、实训总结报告: (一)linux操作系统安装与基本配置一、实验目的: 1、熟悉和掌握Red Hat Linux 9、0操作系统的安装与配置; 2、掌握Linux网络配置命令的功能和使用。二、实验内容: 1、利用Vmware 6、0虚拟机来安装与配置Red Hat Linux9; 2、 Linux系统下网络配置和连接。三、实验步骤: 1、配置vmware 6、0虚拟机:1) 启动vmware虚拟机2) 单击“文件>CD-ROM>CD-ROM>网络设备控制)。重复上述过程,实现Linux虚拟机和Windows系统主机的网络连接。写出详细实验过程,包括命令和IP地址。四、思考题:1)Linux有几种安装方法?2)什么是主分区?什么是扩展分区?什么是逻辑分区?这些分区在Linux中如何表示?3)怎样使用Disk Druid 工具建立磁盘分区?说明过程。4)ifconfig指令能对哪些参数进行配置?5)ipconfig指令有哪些用法?

2010专第一次上机作业:%20MatLab练习题-基本运算

一、书上命令练习: 二、MatLab 练习1 注意: 1,请按要求作题,写出程序并把结果附上,并保存文件. 2,仔细填写 “学生信息”. 3,把此word 文档的文件名更名为你的 “学号 姓名(*)”-*表示第几次作业.在下课前5分钟提交. 1, (5*2+1.3-0.8)*10^2/25 答案:42 2,y =23log )10sin(4 ) 43.0(2 +?+-e π 答案: 3,z = 10sin(π/3) ... cos(π/3) 答案: 4,x = sin(223/3), y = x^2,z = y*10 ; 求x+2y-5z 答案: 5,i e z i z i z ?==+=π23215,2,72,计算3 221z z z z z += 答案: 6, 建立起始值=3,增量值=5.5,终止值=44的一维数组x (填写程序语句) 答案:X=(3:5.5:44) X =

3.0000 8.5000 1 4.0000 19.5000 2 5.0000 30.5000 3 6.0000 41.5000 7, 建立等差一维数组x :首项为0,末项为π,项数为15 (填写程序语句) 答案: >> X=linspace(0,pi,15) X = Columns 1 through 8 0 0.2244 0.4488 0.6732 0.8976 1.1220 1.3464 1.5708 Columns 9 through 15 1.7952 2.0196 2.2440 2.4684 2.6928 2.9172 3.1416 8, 计算行列式的值1 8 7 624 3 23 =A 答案:-8 9, 矩阵??????????=18 7 624323A ,矩阵??? ? ? ?? ???=33 3 222111 B ;分别求出A x B 及A 与B 中对应元素 之间的乘积的程序语句。 答案>> A=[3 2 3;4 2 6;7 8 1] A = 3 2 3 4 2 6 7 8 1 >> det(A) ans = -8

并行计算第一次实验报告

并行计算上机实验报告题目:多线程计算Pi值 学生姓名 学院名称计算机学院 专业计算机科学与技术时间

一. 实验目的 1、掌握集群任务提交方式; 2、掌握多线程编程。 二.实验内容 1、通过下图中的近似公式,使用多线程编程实现pi的计算; 2、通过控制变量N的数值以及线程的数量,观察程序的执行效率。 三.实现方法 1. 下载配置SSH客户端 2. 用多线程编写pi代码 3. 通过文件传输界面,将文件上传到集群上 4.将命令行目录切换至data,对.c文件进行编译 5.编写PBS脚本,提交作业 6.实验代码如下: #include

#include #include #include #include #include static double PI=0; static int N=0; static int numOfThread=0; static int length=0; static int timeUsed=0; static int numOfThreadArray[]={1,2,4,6,8,10,12,14,16,20,24,30}; static int threadArraySize=12; static int nTime=4; static int repeatTime=30; static double totalTime=0; struct timeval tvpre, tvafter; pthread_mutex_t mut; clockid_t startTime,endTime;

停车场管理系统 C语言实习报告

C 语 言 课 程 实 习 报 告 【要求】 设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在它之后进来的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应依据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。编制一程序模拟停车场管理。 【提示】 汽车的模拟输入信息格式可以是:(到达/离去,汽车牌照号码,到达/离去的时刻)。 基本要求:要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某

辆车离开停车场时应交纳的费用和它在停车场内停留的时间。 根据题目要求,停车场可以用一个长度为n 的堆栈来模拟。由于停车场内如有某辆车要开走,在它之后进来的车辆都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场,所以可以设两个堆栈。 一、需求分析 根据题目要求,程序应该提供“到达/离去,汽车牌照号码,到达/离去”的输入、输出操作;在程序中需要浏览停车场的车位信息,应提供显示、查找、排序等操作;此外还应提供键盘式菜单实现功能选择。 二、总体设计: 根据需求分析,可以将系统的设计分为以下五大模块:(1)车辆进入;(2)车辆退出; (3)车辆等待;(4)车辆查询;(5)退出。 一、详细设计: 主函数中只包含菜单函数,菜单部分单独写成函数,只提供输入、功能处理和输出部分的函数调用,其中各功能模块用菜单方式选择。 [程序] #define N 30 /*等待车辆*/ #define M 20 /*车位*/ #define P 2 /*单位时间所收费用*/ #include #include #include struct cars /*定义车辆信息*/ { char state; int num; int in_time; 停车场 管理系统 车辆进入 车辆退出 车辆等待 车辆信息 显示 车辆查询 退出系统

linux 实习报告

实习报告 实习性质:linux操作系统课程实习 学生姓名:xx 专业班级:xx 指导教师:xx 实习时间:2013年12月16日- 2013年12月20日实习地点:4112、4212、4312、4412 重庆工程职业技术学院

学生实习考核表

目录 1.实习目的 (1) 2实习概况 (1) 2.1实习要求 (1) 2.2实习时间 (1) 2.3实习基本情况 (1) 2.4硬件环境 (1) 3 实习内容 (2) 3.1 linux安装 (2) 3.2 Linux操作系统命令 (5) 3.3 ftp服务器的安装与配置 (5) 3.3.1 启动vsftpd服务 (5) 3.3.2 查看本机IP地址信息 (6) 3.3.3 打开FTP服务器并配置权限 (6) 3.3.4 配置FTP服务器 (7) 3.3.5 重启ftp服务 (8) 3.4 配置samba服务器 (8) 3.4.1 查看是否安装Samba服务器 (8) 3.4.2 添加/删除程序 (9) 3.4.3 启动Samba (11) 4 实习体会 (11) 4.1学习所得 (11) 4.2经验教训 (11) 4.3实习体会 (12)

1.实习目的 (一).通过综合实训进一步巩固、深化和扩展学生的专业技能。 1.熟练掌握Linux操作系统的安装及基本配置。 2.熟练掌握Linux系统管理。 3.掌握Linux下用户和组的管理。 4.掌握Linux下FTP服务器的管理。 (二)训练和培养学生获取信息和处理信息的能力,充分培养和提高学生的动手能力,学会通过网站、书籍等方式收集所需的资料。 (三)培养学生运用所学的知识和技能解决Linux使用、管理过程中所遇到的实际问题的能力及其基本工作素质。 (四)培养学生理论联系实际的工作作风、严肃认真的科学态度以及独立工作的能力,树立自信心。 (五)训练和培养学上的团队协作精神与合作能力。 2实习概况 2.1实习要求 具体来讲,《linux操作系统》课程包括以下实习内容: (一)独立完成实训。 (二)要求熟练掌握Linux操作系统的安装与基本配置。 (三)熟练掌握Linux系统管理基本方法。 (四)掌握Linux下用户和组的管理。。 (五)掌握Linux下的FTP服务器的管理。 2.2实习时间 2013年12月16日至2013年12月20日 2.3实习基本情况 实习地点:四教学楼 4112、4212、4312、4412 实习环境:RedHat9软件 实习内容:掌握linux操作系统 2.4硬件环境

软件基础第一次上机作业

1、设有一个线性表E={e1, e2, … , en-1, en},设计一个算法,将线性表逆置,即使元素排列次序颠倒过来,成为逆线性表E’={ en , en-1 , … , e2 , e1 },要求逆线性表占用原线性表空间,并且用顺序表和单链表两种方法表示,分别用两个程序来完成。(文件夹:顺序表逆置、单链表逆置) 线性表:#include<> #include<> typedef char datatype; const int maxsize=1024; typedef struct { datatype data[maxsize]; int last; }sequenlist; void create(sequenlist*&); void print(sequenlist*); void invert(sequenlist*); void main() { sequenlist*L; create(L); printf("建立的顺序表是:"); print(L); invert(L); printf("逆置后的顺序表是:"); print(L); } void create(sequenlist*&L) { L=(sequenlist*)malloc(sizeof(sequenlist)); L->last=0; printf("请输入数据:"); char ch; while((ch=getchar())!='\n') { L->last++; L->data[L->last]=ch; } } void print(sequenlist*L) { for(int i=1;i<=L->last;i++) printf("%2c",L->data[i]);

计算机组成原理上机实验报告

《计算机组成原理实验》课程实验报告 实验题目组成原理上机实验 班级1237-小 姓名 学号 时间2014年5月 成绩

实验一基本运算器实验 1.实验目的 (1)了解运算器的组成原理 (2)掌握运算器的工作原理 2.实验内容 输入数据,根据运算器逻辑功能表1-1进行逻辑、移位、算术运算,将运算结果填入表1-2。 表 1-1运算器逻辑功能表 运算类 A B S3 S2 S1 S0 CN 结果 逻辑运算65 A7 0 0 0 0 X F=( 65 ) FC=( ) FZ=( ) 65 A7 0 0 0 1 X F=( A7 ) FC=( ) FZ=( ) 0 0 1 0 X F=( ) FC=( ) FZ=( ) 0 0 1 1 X F=( ) FC=( ) FZ=( ) 0 1 0 0 X F=( ) FC=( ) FZ=( ) 移位运算0 1 0 1 X F=( ) FC=( ) FZ=( ) 0 1 1 0 0 F=( ) FC=( ) FZ=( ) 1 F=( ) FC=( ) FZ=( ) 0 1 1 1 0 F=( ) FC=( ) FZ=( ) 1 F=( ) FC=( ) FZ=( ) 算术运算 1 0 0 0 X F=( ) FC=( ) FZ=( ) 1 0 0 1 X F=( ) FC=( ) FZ=( ) 1 0 1 0X F=( ) FC=( ) FZ=( ) 1 0 1 0X F=( ) FC=( ) FZ=( ) 1 0 1 1 X F=( ) FC=( ) FZ=( ) 1 1 0 0 X F=( ) FC=( ) FZ=( ) 1 1 0 1 X F=( ) FC=( ) FZ=( ) 表1-2运算结果表

linux实训报告

安徽xxxxxx学院二次修改 linux服务器配置 15计应2班实训 学号:321518xxxx 姓名:xxx 班级:15计算机应用2班 指导老师:xxx

目录 封面..................................................... 错误!未定义书签。目录................................................... 错误!未定义书签。 一、使用Linux系统..................................... 错误!未定义书签。 1. 使用ls、mkdir、rmdir、cd、mv、rm、cp等文件目录管理指令。错误! 未定义书签。 2. 使用gzip、gunzip、tar等命令。................... 错误!未定义书签。 3. 文本编辑命令.................................... 错误!未定义书签。 4. 用户与组的管理.................................. 错误!未定义书签。 5. 权限管理......................................... 错误!未定义书签。 二、配置常规网络参数................................... 错误!未定义书签。 三、配置与管理企业网站................................. 错误!未定义书签。 四、配置与管理FTP服务器............................... 错误!未定义书签。 五、配置与管理DNS服务器 ............................... 错误!未定义书签。

相关主题
文本预览
相关文档 最新文档