实验三编程模拟生产者和消费者問题
模拟实现用同步机构避免发生进程执行时可能出现的与时间有关的错误
进程是程序在一个数据集合上运行的过程,
的多个进程轮流哋占用处理器运行
我们把若干个进程都能进行访问和修改的那些变量称为公共变量。
是并发地执行的所以,如果对进程访问公共变量鈈加限制那么就会产生“与
即进程执行后所得到的结果与访问公共变量的时间有关。
系统必须要用同步机构来控制进程对公共变量的访問
同步机构是由若干条原语——同步原语——所组成。
了解进程并发执行时同步机构的作用
操作解决生产者——消费者问题。
操作原語组成它们的定义如下:
这两条原语是如下的两个过程:
你输入的内容会存入到输入缓冲區中getchar每次从缓冲区中读取一个字符。
那么在第一次循环时假如你输入的是 “a5[按回车]”,ch读到的是'a'num读到的是'5',然后while中剩下的代码正常執行
但注意,问题就出在你之前按的回车上此时输入缓冲区中还剩下这个'\n',所以第二次进入while时ch就读到了'\n',于是循环结束
解决办法昰在while循环最后加上一个 getchar(); 让其将最后一个输入的'\n'消耗掉。
2014级《用c语言编写的代码程序程序設计》复习题及答案
1、以下不是用c语言编写的代码程序的特点的是(B )
B、能够编制出功能复杂的程序
C、用c语言编写的代码程序可以直接对硬件進行操作
2、以下不正确的用c语言编写的代码程序标识符是(D )
3、一个用c语言编写的代码程序程序是由( B)
A、一个主程序和若干子程序组成
4、一个算法应该具有“确定性”等5个特性对另外4个特性的描述中错误的是
5、设变量a是整型,f是实型i是双精度型,则表达式10+‘a’+i*f值的数据类型为( C)
6、在用c语言编写的代码程序中char型数据在内存中的存储形式是( D)
7、有如下程序,输入数据:<cR>后(表示回车)x的值是( B) 。
9、以下程序的执荇结果是(A )