《模板与输入输出流》课后习题 (含答案)
plc习题及答案

一、填空题1、PLC的运算和控制中心是( CPU )。
2、PLC中使用的存储器类型有(只读存储器ROM)和(随机存储器RAM )两种。
3、PLC中输入接口电路的类型有(直流型)和(交流型)两种。
4、PLC的输入电路采用(光电耦合)隔离方式。
5、PLC中输出接口电路的类型有(继电器输出)、(双向经闸管输出)和(晶体管输出)三种。
6、CPU224型PLC本机I/O点数为( 14 )/( 10 )。
7、通常把内部存储器又称为(中间继电器)。
8、特殊存储器的作用是用于(存储系统的特殊信息)。
9、定时器的三种类型分别是(无记忆通电延时)、(有记忆通电延时)和(断电延时)。
10、计数器的三种类型分别是(增计数器)、(减计数器)和(增减计数器)。
11、有条件结束指令的梯形图格式为12、字节移位指令的最大移位位数为( 8位)。
13、双字循环移位指令的最大移位位数为( 32位)。
14、整数的加法指令的梯形图操作码是( ADD-I );整数的减法指令的梯形图操作码是( SUB-I )。
15、段译码指令的语句表指令形式是( SEG IN,OUT )。
16、中断允许指令的操作码是( ENI ),中断禁止指令的操作码是( DISI )。
中断程序标号指令的操作码是( INT )。
17、S7-200系列PLC的中断事件包括三大类,它们分别是(通讯口中断)、( I/O中断)和(时基中断)。
18、定时器中断由1ms延时定时器( T32 )和( T96 )产生。
19、模拟量输入模块的作用是(将传感器输出的标准模拟量信号转换为PLC内部的数字量信号)。
20、模拟量输出模块的作用是(将PLC内部的数字量信号转换为标准的模拟量输出信号)。
21、EM231模拟量输入模块电流输入范围是( 0~20mA )。
22、EM231模拟量输入模块的输入类型为(差分输入型)。
23、EM231热电阻模块可以连接( 3 )种类型的热电阻。
24、模拟量输出模块按其位置顺序寻址( AQW0、AQW2、AQW4等)。
PLC课后作业题答案

PLC作业题答案作业1:P9 1,3,61.1填空1)PLC主要由_CPU_、__输入模块_、_输出模块_和___存储单元__等组成。
2)外部输入电路断开时,对应的输入映像器的状态为___OFF___,梯形图中对应的输入继电器的常开触点__ OFF ___,常闭触点___ ON __。
3)若梯形图中输出继电器的线圈“通电”,对应的输出映像寄存器为__ ON _状态,在输出处理阶段后,继电器型输出模块中对应的硬件继电器的线圈__ ON _,其常闭触点__ OFF __,外部负载_接通_1.3 PLC有哪些主要特点答:1)高可靠性(平均无故障时间可达30万小时):在硬件方面:采用优质器件,先进的电源以防止干扰,其内部采用了电磁屏蔽,外部输入/输出电路一律采用光电隔离,加上了常规滤波和数字滤波;软件方面:设置了警戒时钟WDT、自诊断等。
PLC用软件代替大量的中间继电器和时间继电器,大大减少了因触点接触不良造成的故障。
2)灵活性高、扩展性好、通用性强产品标准化、模块化、系列化3)功能强、性价比高:PLC具有自诊断、监控和各种报警功能,既可完成顺序控制,又可进行闭环回路的调节控制。
随着技术的发展,PLC的网络功能发展很快,可以说,PLC在工控领域内几乎无所不能。
4)使用方便、适应性强:PLC是专为工业环境下应用而设计的工业计算机,体积小,重量轻,耗电低;使用梯形图编程,简单易学。
1.6 简述PLC的扫描工作过程P7答:PLC有两种基本的工作模式,即RUN和STOP模式,只有在运行状态时才进行输入/输出刷新和执行用户程序。
PLC运行时的每次循环过程中,要完成内部处理、通信服务和执行用户程序(分为输入处理、程序执行、输出处理),PLC通过反复执行用户程序来实现控制功能,这种周而复始的循环工作方式称为扫描工作方式。
作业3:P49 1,3,5, 3.9, 3.12, 3.14 3.1、填空1)定时器的线圈__接通__时开始定时,定时时间到时其常开触点__ON__,常闭触点__OFF__。
第4章全部习题参考答案

超流水线以增加流水线级数的方法来缩短机器周期,使相同时间内超流水线能执行更多的机器指令。
3.4第4章习题解答1、简要解释下列名词述语虚拟存储器:依靠操作系统的支持来实现的,为用户提供一个比实际内存大的可访问存储器空间,即在软件编程上可使用的存储器,称为虚拟存储器。
随机存储器RAM:按给定地址随机地访问任一存储单元,访问时间与单元位置无关。
只读存储器ROM:在正常工作中只能读出,不能写入的存储器。
存取周期:指存储器做连续访问操作过程中一次完整的存取操作所需的全部时间。
数据传输率:是数据传入或传出存储器的速率。
动态刷新:对动态存储器中原存信息为1的电容补充电荷,称为动态刷新。
直接映像Cache:将主存与Cache的存储空间划分为若干大小相同的页,每个主存页只能复制到某一个固定的Cache页中。
全相联映像Cache:将主存与Cache的存储空间划分为若干大小相同的页,主存的每一页可以映象到Cache的任一页上。
组相联映像Cache:将主存与Cache都分组,主存中一个组内的页数与Cache的分组数相同。
每一组Cache中含有若干页(一般页数较少);则主存中的各页与Cache的固定组号有映象关系,可自由映象到对应的Cache组中任一页。
段页式虚拟存储器:将程序按其逻辑结构分段,每段再分为若干大小相同的页,主存空间也划分为若干同样大小的页。
相应地建立段表与页表,分两级查表实现虚实地址的转换。
以页为单位调进或调出主存,按段共享与保护程序及数据。
相联存储器:是一种按内容寻址的存储器,它是根据所存信息的全部特征或部分特征进行存取的存储器,称为相联存储器。
2.请简计算机系统中的三级存储体系结构模式,并分析这种模式的优点和缺点。
答:三级存储体系包括缓存(cache)、内存和外存,这种模式的优点是层次体系清晰、便于设计实现,也利于系统调度管理,能提高存储系统性能;缺点是结构复杂,管理和控制都比较复杂,硬件成本高。
3.何谓随机存取?何谓顺序存取?何谓直接存取?请各举一例进行说明。
C++课后习题答案(电大,李宁主编)【范本模板】

第一章C++语言概述自测题P21。
1—1 CP8 1。
2-1 形式参数表 1.2-2 main 1。
2—3 ;1。
2-4 } 1.2—5 main 1.2-6 显示器输出流1。
2-7 键盘输入流1。
2—8 头文件 1.2—9 int f( );1.2—10 124 1。
2-11 × 1。
2—12 ×1.2-13 √ 1。
2—14 √ 1.2—15 ×1。
2—16 √ 1。
2-17 ABCFG 1.2-18 D1.2—19 DP11 1。
3—1 OBJ 1。
3—2 source.cpp习题一(P12)1—11.C 2.类型修饰符3.main4.语句以分号(;)结束5.{6.<〈7.〉〉8..h 9.source.obj10.Main 11.char *Hi(const char *); 12.331-21.√2.√3.×4.×5.√6.×7.√8.×1-31.ABFI 2.D 3.ABCD 4.B1—4# include 〈iostream。
h>void main( ){cout <<”C++语言程序设计"<〈endl;}1—5#include <iostream。
h〉void main(){int i,j,k;cout <<"请输入3个整数:";cin 〉>i>>j>>k;cout <<endl〈〈i〈〈”+”<〈j<<”+”〈〈k<〈”=”〈<i+j+k〈<endl;}第二章基本数据类型与表达式自测题P152。
1—1 常量变量 2.1-2 存储格式所能实施的操作P18 2。
2—1 √ 2.2—2 × 2.2-3 8 (常量123456789123L超过了长整型表示的2。
c++流类库与输入输出习题答案

1.概念填空题1.1头文件iostream中定义了4个标准流对象cin,cout,cerr,clog。
其中标准输入流对象为cin,与键盘连用,用于输入;cout为标准输出流对象,与显示器连用,用于输出。
1.2用标准输入流对象cin与提取操作符>>连用进行输入时,将空格与回车当作分隔符,使用get()成员函数进行输入时可以指定输入分隔符。
1.3每一个输入输出流对象都维护一个流格式状态字,用它表示流对象当前的格式状态并控制流的格式。
C++提供了使用格式控制函数与操作子函数来控制流的格式的方法。
1.4 C++根据文件内容的数据格式可分为两类:文本文件和二进制文件。
前者存取的最小信息单位为字节,后者记录。
1.5文件输入是指从文件向内存读入数据;文件输出则指从内存向文件输出数据。
文件的输入输出首先要打开文件;然后进行读写;最后关闭文件。
1.6文本文件是存储ASCII码字符的文件,文本文件的输入可用cin从输入文件流中提取字符实现。
文本文件的输出可用cout将字符插入到输出文件流来实现。
程序在处理文本文件时需要(需要/不需要)对数据进行转换。
1.7二进制文件是指直接将计算机内的数据不经转换直接保存在文件中。
二进制文件的输入输出分别采用read()、write() 成员函数。
这两个成员函数的参数都是2个,分别表示读写缓冲区和字节数。
1.8设定、返回文件读指针位置的函数分别为seekg,tellg;设定、返回文件写指针位置的函数分别为seekp,tellp。
2 简答题2.1 为什么cin输入时,空格和回车无法读入?这时可改用哪些流成员函数?2.2 文件的使用有它的固定格式,试做简单介绍。
2.3 在ios类中定义的文件打开方式中,公有枚举类型open_mode的各成员代表什么文件打开方式?2.4 简述文本文件和二进制文件在存储格式、读写方式等方面的不同,各自的优点和缺点。
2.5 文本文件可以按行也可以按字符进行复制,在使用中为保证能完整复制要注意哪些问题?2.6 文件的随机访问为什么总是用二进制文件,而不用文本文件?2.7 怎样使用istream和ostream的成员函数来实现随机访问文件?3.选择题3.1要进行文件的输出,除了包含头文件iostream外,还要包含头文件(C )。
国家二级C++机试(运算符重载、模板和C++流)模拟试卷8(题后含答案及解析)

国家二级C++机试(运算符重载、模板和C++流)模拟试卷8(题后含答案及解析)题型有:1. 选择题选择题1.有如下程序:#include<iostrearn>using namespace std;int main( ) { cout.fill(‘*’);cout.width(6);cout.fill(‘#’);cout <<123<<endl;return 0;} 执行后的输出结果是( )。
A.###123B.123###C.***123D.123***正确答案:A解析:此题考查的是I/O格式化输出。
函数width(int n)设置输入输出宽度,当实际数据宽度小于制定的宽度时,多余的位置用填充字符填满;当实际数据宽度大于设置的宽度时,仍按实际宽度输出;函数fill(char c)用来设置填充字符。
知识模块:C++流2.下面关于C++流的叙述中,正确的是( )。
A.cin是一个输入流对象B.可以用ifstream定义一个输出流对象C.执行语句序列char*y=“PQMN’’;cout<<,y;将输出字符串”PQMN”的地址D.执行语句序列char x[80];cin.getline(x,80);时,若键入Happy new year 则x中的字符串是”Happy’’正确答案:A解析:此题考查的是C++流的概念和I/O的格式化。
cin是类的对象,亦即输入流对象;ifstream是输入文件流类,不能定义一个输出流对象:C选项中最后输出的是字符串“PQMN”:D选项中x中字符串应该是“Happy new year”。
知识模块:C++流3.有如下程序:#include<iostream>#include<iomanip>using namespace std;int main( ) { cout.fill(‘*’);cout<<left <<setw(4)<<123<<<’’OK’’<<endl;return 0;} 执行这个程序的输出结果是( )。
第六章“输入输出及接口”习题答案

第六章输入输出及接口〔习题6.2〕I/O端口与存储器地址常有__⎽⎽⎽⎽___⎽和__⎽⎽⎽⎽___⎽两种编排方式,8088/8086处理器支持后者,设计有专门的I/O指令。
其中指令IN是将数据从__⎽⎽⎽⎽___⎽传输到__⎽⎽⎽⎽___⎽,执行该指令时8088/8086处理器引脚产生__⎽⎽⎽⎽___⎽总线周期。
指令“OUT DX, AL”的目的操作数是__⎽⎽⎽⎽___⎽寻址方式,源操作数是__⎽⎽⎽⎽___⎽寻址方式。
〔解答〕(I/O端口与存储器地址)统一编址(I/O端口与存储器地址)独立编址外设处理器I/O读(I/O端口的DX)寄存器间接寄存器〔习题6.4〕基于教程P142图6-7接口电路,编程使发光二极管循环发光。
具体要求是:单独按下开关K0,发光二极管以L0、L1、L2、……L7顺序依次点亮,每个维持200ms,并不断重复,直到有其他按键操作;单独按下开关K1,发光二极管以L7、L6、L5、……L0顺序依次点亮,每个也维持200ms,并不断重复,直到有其他按键操作;其他开关组合均不发光,单独按下开关K7,则退出控制程序。
延时200ms可以直接调用子程序DELAY实现。
〔解答〕again: mov dx,6000hmov al,0ffhout dx,al ;全不亮again1: in al,dxcmp al,7fh ;D7~D0=0111111B ?jz done ;单独按下K7,退出cmp al,0feh ;D7~D0=11111110B ?jz next1 ;单独按下K0,转移到next1cmp al,0fdh ;D7~D0=11111101B ?jz next2 ;单独按下K1,转移到next2jmp again ;其它情况不点亮next1: mov cx,8mov al,1 ;从K0开始next11: out dx,al ;某个LED电亮call delay ;延时200msshl al,1 ;rol al,1loop next11jmp again1next2: mov cx,8mov al,80h ;从K7开始next21: out dx,al ;某个LED电亮call delay ;延时200msshr al,1 ;ror al,1loop next21jmp again1done: mov al,0ffhout dx,al ;全不亮〔习题6.5〕有一个查询输入接口电路类似图6-9,但其数据端口为8F40H、状态端口为8F42H。
(word完整版)C语言程序设计课后习题1-8参考答案

C语言程序设计课后习题1—8参考答案习题1参考答案一、简答题1、冯诺依曼计算机模型有哪几个基本组成部分?各部分的主要功能是什么?答:冯诺依曼计算机模型是由运算器、控制器、存储器、输入设备、输出设备五大功能部件组成的。
运算器又称算术逻辑部件,简称ALU,是计算机用来进行数据运算的部件。
数据运算包括算术运算和逻辑运算。
控制器是计算机的指挥系统,计算机就是在控制器的控制下有条不紊地协调工作的.存储器是计算机中具有记忆能力的部件,用来存放程序和数据.输入设备是用来输入程序和数据的部件。
输出设备正好与输入设备相反,是用来输出结果的部件。
2、简述计算机的工作原理。
答:计算机的工作原理可简单地概括为:各种各样的信息,通过输入设备,进入计算机的存储器,然后送到运算器,运算完毕把结果送到存储器存储,最后通过输出设备显示出来。
整个过程由控制器进行控制。
3、计算机软件系统分为哪几类?答:软件内容丰富,种类繁多,通常根据软件用途将其分为两大类:系统软件和应用软件。
系统软件是指管理、监控、维护计算机正常工作和供用户操作使用计算机的软件。
这类软件一般与具体应用无关,是在系统一级上提供的服务。
系统软件主要包括以下两类:一类是面向计算机本身的软件,如操作系统、诊断程序等。
另一类是面向用户的软件,如各种语言处理程序(像BC、VC等)、实用程序、字处理程序等。
在操作系统的基础上运行。
4、什么叫软件?说明软件与硬件之间的相互关系。
答:软件是指计算机程序及有关程序的技术文档资料。
两者中更为重要的是程序,它是计算机进行数据处理的指令集,也是计算机正常工作最重要的因素。
在不太严格的情况下,认为程序就是软件。
硬件与软件是相互依存的,软件依赖于硬件的物质条件,而硬件则需在软件支配下才能有效地工作.在现代,软件技术变得越来越重要,有了软件,用户面对的将不再是物理计算机,而是一台抽象的逻辑计算机,人们可以不必了解计算机本身,可以采用更加方便、更加有效地手段使用计算机。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
外层 for 循环执行了第一次后的数据顺序为: 21 34 98 55 76 43 4、通过表达式 5、通过表达式 fd.eof() fd 可以判断文件流 fd 的读写指针是否到达文件的尾部。
可以判断文件流 fd 是否正确打开。
6、重载提取运算符>>和插入运算符<<实现对象的输入和输出,需要将重载的运算符函数声 明为该类的 友元函数 7、 C++允许用户利用 fstream 类来定义非标准的文件对象。 当被定义的对象是调用重载运算 符”>>”或”<<”来读取或写入文件时,这个文件必定是 文本 三、程序阅读题 1、#include <iostream> #include <string> using namespace std; template <typename T> class Point { string m_name; T *m_data; public: Point(char *name,T *data){m_name = name; m_data = data;} Point(Point<T> &x){m_name = x.m_name; m_data = x.m_data;} Point<T> &operator=(Point<T> x) { m_name = x.m_name; m_data = x.m_data; return *this; } void Set(const T&info) {*m_data = info;} void Show() 文件。
B.cast<>(c); D.cast<int, char>(c); A
13、关于关键字 class 和 typename,下列表述中正确的是 A. 程序中的 typename 都可以替换为 class B. 程序中的 class 都可以替换为 typename C. 在模板形参表中只能用 typename 来声明参数的类型
二、填空题 1、模板把数据类型改为一个 类模板 和 参数 ,称为 参数化的 程序设计。模板分为 。 存取,
函数模板
两种,使用模板可以提高代码的 复用性
2、C++文件流采用两种格式访问文件:文本格式和二进制格式。前者按 字符 后者按 字节 存取。
3、以下程序中 Sort()函数是顺序表的成员函数。 template <typename T,int size> void Orderedlist<T,size>::Sort(){ int i,j,k; T temp; for(i=0;i<last;i++){ k=i; temp=slist[i];
四、程序填空题
1、下列程序将结构体变量 tt 中的内容写入 D 盘上的 date.txt 文件。
#include <fstream > #include < cstdlib > Using namespace std; struct date{ int year,month,day; }; void main(void){ date tt={2009,6,10};
9、有如下函数模板定义: template <typename T> T func(T x,T y){ return x*x+y*y;} 在下列对 func 的调用中,错误的是 D
A.func(3,5); C.func(3,5.5);
B.func(3.0,5.5); D.func<int>(3,5.5);
3、打开一个二进制文件时必须采用 A. ios::in C. ios::binary B. ios::out D. ios::app
4、 在 get、 getline、 read 和>>四个标准输入流成员函数中有 A. 1 B. 2 B C. 3
C
个可以读取字符串。 D. 4
5、在类当中使用模板,其主要目的是 A.提高代码的运行效率 B.提高代码的重用性 C.实现类的多态性 D.完善类的封装性
D. 在模板形参表中只能用 class 或 typename 来声明参数的类型 14、在语句 cin>>data;当中的 cin 是 A.C++当中的关键词 B.系统预定义的输入流对象 C.C++当中实现输入的函数 D.C++当中实现输入流的类 15、 下列对模板的声明,正确的是 A.template<T> B.template<class T1,T2> C.template<class T1,class T2> D.template<C1ass T1,class T2> 16、 一个 C 允许用户为类定义一种模式,使得类中的某些数据成员及某些成员函数的 返回值能取任意类型。 A.函数模板 B.模板函数 D C.类模板 D.模板类 17、类模板的模板参数 C B
{ } }; void main() {
cout<<m_name<<":"<<*m_data<<endl;
int x=10,y=-10; Point<int> a("UP",&x),b("Down",&y),c=a; a.Show();b.Show();c.Show(); c.Set(0);a=b;b=c;b.Set(-5); a.Show();b.Show();c.Show(); }
ofstream
outdate
;
outdate.open("d:\\date.txt",ios::binary); if ( !outdate )
{ cerr << "\n D:\\write1.dat not open " << endl ; exit (-1) ; } outdate.write( (char*)&tt ,sizeof(tt));
2、写出程序的结果 #include <iostream> using namespace std; template <typename T> T add(T a,T b) { return a+b; } void main() { cout<<add<char>('a',2)<<endl; cout<<add<int>(3.5,2.9)<<endl; cout<<add(1.1,2.1)<<endl; }
ห้องสมุดไป่ตู้
for(j=i;j<=last;j++) if(slist[j]<temp){ k=j; temp=slist[j]; }
if(k!=i){ temp=slist[i]; slist[i]=slist[k]; slist[k]=temp; } } } 该成员函数用到的是 选择 若未排序前的数据为: 55 34 排序。 98 21 76 43
6、cin 是基本输入/输出流类库当中预定义的 A. 类 B. 对象 C. 文件
B D. 函数 A
7、关于提取和插入运算符,下面说法错误的是 A.可以重载为类的成员函数 B.可以重载为类的友元函数
C.提取运算符是从输入字符序列当中提取数据 D.插入运算符是把输出数据插入到输出字符序列中 8、 cout 是基本输入/输出流类库当中预定义的是 A. 类 B. 对象 C. 文件 D. 函数 B
if(
IsleapYear(yy)
)
{ if(dd==30) mm++,dd=1;} else{if(dd==29) mm++,dd=1;} } if(mm==13) yy++,mm=1; return *this } bool Date::IsLeapYear(int y) { return y%100!=0&&y%4==0||y%400==0; } ;
A.只可作为数据成员的类型 B.只可作为成员函数的返回类型 C.只可作为成员函数的参数类型 D.以上三者皆可 18、下列程序段中有错的是 C A.template <Class Type> B.Type C.func(Type a,b) D.{return (a>b)?(a):(b);} 19、类模板的使用实际上是将类模板实例化成一个具体的 A.类 B.对象 C.函数 D.模板类 20、关于函数模板,描述错误的是 A A.函数模板必须由程序员实例化为可执行的函数 B.函数模板的实例化由编译器实现 C.一个类定义中,只要有一个函数模板,则这个类是类模板 D.类模板的成员函数都是函数模板,类模板实例化后,成员函数也随之实例化 A
《模板与输入输出流》习题
学号 一、选择题
姓名
1、下列关于模板的描述中,错误的是
B
。
A.在模板声明中用 < 和 > 括起来的部分是模板的形参表。 B.类模板中的模板非类型参数代表一个变量,可以修改参数的值。 C.函数模板的声明必须含变量名。 D.模板声明中的第一个符号总是关键字 template。 2、cin、cout、cerr 和 clog 四个流对象中有 A. 1 B. 2 C D C. 3 模式。 个是全局标准流对象。 D. 4
outdate.close(); } 2、定义类 Date,重载++和>>运算符。 #include <iostream> #include <string> using namespace std; class Date { int yy,mm,dd; public: Date(int y=0,int m=0,int d=0){yy=y,mm=m,dd=d;} void Print(){cout<<yy<<"年"<<mm<<"月"<<dd<<"日"<<endl;} Date operator++(); friend Date operator++(Date &t,int) { Date temp = t; return temp; } bool IsLeapYear(int y); friend istream& operator>>(istream&is ,Date &t) { cout<<"请输入的正确的年日月数字"; is>>t.yy>>t.mm>>t.dd; return is; } }; Date Date::operator ++() { dd++; if(mm==1||mm==3||mm==5||mm==7||mm==8||mm==10||mm==12) {if(dd=32) mm++,dd=1;} else if(mm==4||mm==6||mm==9||mm==11) {if(dd=31) mm++,dd=1;} else { ++t;