表达式与标准输入与输出实验实验报告

表达式与标准输入与输出实验实验报告

C语言程序设计实验报告

专业:计算机科学与技术班级:计算机科学与技术创新实验班日期:20XX-11-23 成绩:实验组别:第次实验:指导教师:学生姓名:学号:同组人姓名:

实验名称:表达式输入与输出实验一、实验目的:

1.熟练掌握各种运算符的运算功能,操作数的类型,运算结果的类型及运算过程中的类型转换,重点是C语言特有得运算符,例如位运算符,问号运算符,逗号运算符等;熟练运算符的优先级和结合性。

2.掌握getchar,putchar,scanf和printf函数的用法。

3.掌握简单C程序的编写方法。

二、实验内容:

1.源程序改错

下面给出了一个简单C语言程序例程,用来完成以下工作: 1.输入华氏温度f,将它转换成摄氏温度c后输出; 2.输入圆的半径值r,计算并输出圆的面积s;

3.输入短整数k、p,将k的高字节作为结果的低字节,p的高字节作为结果的高字节,拼成一个新的整数,然后输出;

在这个例子程序中存在若干语法和逻辑错误。要求在计算机上对这个例子程序进行调试修改,使之能够正确完成指定任务。

程序代码:

#include #define PI ; voidmain( void ) {

int f; short p,k; double c,r,s;

/* for task 1 */

printf(“Input Fahrenheit:”); scanf(“%d”,f) ;

c = 5/9*(f-32) ;

printf(“\\n %d(F)=%.2f(C)\\n\\n”,f,c);

/* for task 2 */

printf(\scanf(\s = PI * r * r;

printf(\/* for task 3 */

printf(\scanf(\

newint = (p&0xff00)|(k&0xff00) void main() {

int a,b,t;

printf(\ scanf(\ t=a;a=b;b=t;

printf(\}

3.程序设计

编写并上机调试运行能实现以下功能的程序。

编写一个程序,输入字符c,如果c是大写字母,则将c转换成对应的小写,否则c的值不变,最后输出c。

编写一个程序,输入无符号短整数x,m,n,取出x从第m位开始向左的n位,并使其向左端靠齐。

IP地址通常是4个用句点分隔的小整数,如。这些地址在机器中用无符号长整形表示。编写一个程序,以机器储存的形式读入一个互联网IP地址,对其译码,然后用常见的句点分隔的4部分的形式输出。例如:

整形676879571的二进制表示是00101000 01011000 01011100 11010011。按照8位一组可表示为40 88 98 211。于CPU处理数据的差异,它的顺序是颠倒的,所以最终格式为。

三、实验步骤及结果:

1.源程序改错改后程序:

#include #define PI void main(void) {

int f;

int k,p,newint; double c,r,s; /*for task 1*/

printf(\ scanf(\ c=/*(f-32);

printf(\ /*for task 2*/

printf(\

scanf(\ s=PI*r*r;

printf(\ /*for task 3*/

printf(\ scanf(\

newint=(p&0xff00)|(k&0xff00)>>8; printf(\}

2.源程序修改替换 #include void main() {

int a,b,t;

printf(\ scanf(\ a=a+b;b=a-b;a=a-b;

printf(\}

3.程序设计代码: #include main() {

char c;

c=getchar ;

if(c>='A'&&c #include main {

unsigned short int x,m,n,newint;

printf(\ scanf(\

newint=(~((0xffff>>m)>m)>m+n)>24; b=(x&(0xff0000))>>16;c=(x&(0xff00))>>8; d=(x&(0xff));

printf(\}

四、实验体会:

位运算的实现尽量少用>用&与|要好一些 &为逻辑乘,|为逻辑加

要注意占位符的使用在scanf和printf中

实验报告_实验2 数据类型与表达式

实验报告_实验 2 数据类型与表达式(学生学号__姓名) 一、实验目的: 1、熟悉基本数据类型(int、char、float、double)占用的字节数和存储形式,能够定义基本数据类型的变量,使用这些类型的数据; 2、掌握字符数据的存储形式及其与整数的运算,能正确理解“字符数据”与“字符串”的区别与联系,熟悉常用转义字符的使用; 3、熟悉字符常量与一般常量的定义、使用; 4、掌握算术运算符(重点是/和%)、自增(++)和自减(--)运算符的使用,能够构建正确的表达式,并输出其结果; 5、理解不同类型数据之间运算时的类型转换规则,掌握强制类型转换的方法。 二、实验内容 1、(基础题)用sizeof运算符可以得到各种类型数据占用存储单元长度,利用数据间的关系和不同控制符,可以得到查看数据的存储形式。 回答下列问题: (1)sizeof运算符如何使用?它的操作数可以是类型关键字吗? 答:可用sizeof(类型名或数据) 来获取该类型数据所占字节数。可以。 (2)整数的占用长度与其数值大小有关吗? 答:有。 (3)字符串中’\’’、’\n’、’\t’的功能各是什么? 答:单引号,换行,水平制表。 (4)字符串的一个英文字母占几个字节?一个汉字占几个字节?尾部还有什么字 符? 答:1个字节;4个字节;结束符‘\0’。 (5)整数的存储形式是什么? 答:二进制补码。

2、(基础题)字符数据以整数方式(ASCII)存储的,可以与整数进行+、-运算,既可以用“字符”方式输出,也可以用“整数”方式输出。 回答下列问题: (1)字符数据在内存中是以什么方式存储的? 答: ASCII码。 (2)字符数据与整型数据能相互赋值、运算吗?如何以“整数”方式和“字符” 方式输出字符? 答:能,整数:”%d”,字符:”%c”。 (3)大小写字母的ASCII有什么关系?(如:’G’与’g’) 答:ASCII码相差32。 (4)如何由’A’、’a’分别得到后续的大写字母、小写字母? 答:’A+1’,’a+1.’ (5)字符间的距离如何计算?由一字符能分别得到ASCII比它小5、大10的两个 字符吗?若能,如何得到? 答:两个ASCII码绝对值相减,’a’-5,’a’+10. (6)说明“C”与’c’的联系与区别,能否写成”dog”、’boy’? 答:”C”字符串,’c’字符,能. 3、(基础题)符号常量与常变量(即用const关键字定义)的使用: 回答问题: (1)写出用符号常量定义PI的格式; #define PI (2)写出用“常变量”方式定义PI值的语句。 Const float PI=; 4、(基础题)运行下列程序,体会/、%运算符的用法: 回答下列问题: (1)运算符/的操作数有什么要求? 答:被除数不能为0.

C语言上机实验报告书 表达式求值实验报告

一.需求分析 设计一个程序,演示用算符优先法对算术表达式求值的过程。利用算符优先关系,实现对算术四则混合运算表达式的求值。 (1)输入的形式:表达式,例如2*(3+4) 包含的运算符只能有'+' 、'-' 、'*' 、'/' 、'('、 ')'; (2)输出的形式:运算结果,例如2*(3+4)=14; (3)程序所能达到的功能:对表达式求值并输出 二.系统设计 1.栈的抽象数据类型定义: ADT Stack{ 数据对象:D={ai|ai∈ElemSet,i=1,2,…,n,n≥0} 数据关系:R1={|ai-1,ai∈D,i=2,…,n} 约定an端为栈顶,ai端为栈底 基本操作: Push(&S,e) 初始条件:栈S已存在 操作结果:插入元素e为新的栈顶元素 Pop(&S,&e) 初始条件:栈S已存在且非空 操作结果:删除S的栈顶元素,并用e返回其值 }ADT Stack 2.主程序的流程: EvaluateExpression()函数实现了对表达式求值的功能,main()函数直接调用EvaluateExpression()对输入的表达式求值输出

3.各个模块的主要功能: *Push(SC *s,char c):把字符压栈 *Push(SF *s,float f):把数值压栈 *Pop(SC *s):把字符退栈 *Pop(SF *s):把数值退栈 Operate(a,theta,b):根据theta对a和b进行'+' 、'-' 、'*' 、'/' 、'^'操作 In(Test,*TestOp):若Test为运算符则返回true,否则返回false ReturnOpOrd(op,*TestOp):若Test为运算符,则返回此运算符在数组中的下标precede(Aop,Bop):根据运算符优先级表返回Aop与Bop之间的优先级EvaluateExpression(*MyExpression):用算符优先法对算术表达式求值 三.调试分析 (1)刚开始只编写了一个Push和一个Pop函数,但因为在EvacuateExpression()里既有运算符入/出栈,又有运算数入/出栈,运行下来总是出错。所以就编写了两个不同的Push和Pop函数,分别使用。 四.测试结果 2+3*4/5-1 输入表达式: 输入表达式:5*(10-2*3)-8

C++语言实验报告模板

1 表达式和标准输入与输出实验 1.1 实验目的 (1) 熟练掌握各种运算符的运算功能,操作数的类型,运算结果的类型及运算过程中的类型转换,重点是C语言特有的运算符,例如位运算符,问号运算符,逗号运算符等;熟记运算符的优先级和结合性。 (2)掌握getchar, putchar, scanf 和printf 函数的用法。 (3)掌握简单C程序(顺序结构程序)的编写方法。 1.2 实验内容及结果 1.2.1.源程序改错 下面给出了一个简单C语言程序例程,用来完成以下工作: (1)输入华氏温度f,将它转换成摄氏温度C后输出; (2)输入圆的半径值r,计算并输出圆的面积s; (3)输入短整数k、p,将k的高字节作为结果的低字节,p的高字节作为结果的高字节,拼成一个新的整数,然后输出; 在这个例子程序中存在若干语法和逻辑错误。要求参照2.1.3和2.1.4的步骤对下面程序进行调试修改,使之能够正确完成指定任务。 程序代码: #include #define PI 3.14159; voidmain( void ) { int f ; short p, k ; double c , r , s ; /* for task 1 */ printf(“Input Fahrenheit:” ) ; scanf(“%d”, f ) ; c = 5/9*(f-32) ; printf( “ \n %d (F) = %.2f (C)\n\n ”, f, c ) ; /* for task 2 */ printf("input the radius r:"); scanf("%f", &r); s = PI * r * r; printf("\nThe acreage is %.2f\n\n",&s); /* for task 3 */ printf("input hex int k, p :"); scanf("%x %x", &k, &p ); newint = (p&0xff00)|(k&0xff00)<<8;

C语言程序设计实验第一次上机实验报告

2.第一次实验 C语言程序设计实验报告 专业运算机科学与技术班级信安1302班日期成绩 实验组别第 1 次实验表达式和标准输入与输出实验指导教师周时阳 学生姓名学号同组人姓名 实验名称表达式和标准输入与输出实验 实验目的 1.熟练把握各类运算符的运算功能,操作数的类型,运算结果的类型及运算进程中的类型转换,重点是C语言特有的运算符,例如位运算符,问号运算符,逗号运算符等;熟记运算符的优先级和结合性。 2.把握getchar, putchar, scanf和printf等函数的用法。 3.把握简单的C程序(顺序结构程序)的编写方式。 4.完成教师布置的习题及课程设计上的题目。 实验内容 (一)输出“王”字 源程序如下: #include <> int main() { puts("*************"); puts(" * "); puts(" * "); puts("*************"); puts(" * "); puts(" * "); puts("*************"); return 0; } 实验步骤: 步骤一:计算输出进程中应操纵的空格数,选择星号作为输出的标记。 步骤二:采纳puts函数实现对字符串的输出。 调试及编译进程:

实验中显现的不足及修改:无。 调试:实现对王字的输出。 (二)编程将华氏温度转换为摄氏温度 源程序如下: #include <> int main() { double x,y; printf("请输入华氏温度:"); scanf("%lf",&x); y=(5*(x-32))/9; printf("%.2lf(F)=%.2lf(C)",x,y); return 0; } 编辑步骤: 步骤一:概念两个浮点型变量,别离用来寄放华氏温度和摄氏温度 步骤二:用输入函数输入一个华氏温度值并存入命名为x的单元中。 步骤三:进行华氏温度与摄氏温度之间的转换,将取得的摄氏温度值存入命名为y的单元中。 步骤四:输出取得的摄氏温度值。 调试及编译进程: 输入数据100进行测试

C语言程序设计实验报告

实验二数据类型、运算符和表达式 实验时间:2机时 一、实验目的 1. 掌握C语言数据类型,熟悉各种类型变量的定义和含义。 2. 掌握C语言标准输入、输出函数的使用方法 3. 进一步熟悉C程序的上机过程,积累调试经验。 二、实验意义 通过上机实验,巩固本章所学基本知识-C语言的数据类型、变量的定义和使用、结合数据类型更深入地理解标准输入函数scanf()和标准输出函数printf ()的格式控制符的意义和使用。通过简单程序设计的练习加深对运算符优先级和结合方向的理解,并正确求解表达式的值,这些必要的基础知识是后面深入学习C语言所必须的知识储备。 三、实验重点 1. 数据类型、变量的定义和使用; 2. 运算符、表达式的求解 3. 简单顺序结构的C程序设计 四、实验难点 数据类型的转换、自增自减运算 五、实验方式 提前编写程序,写好实验报告,上机实验时一边调试程序一边将实验报告上关于程序调试和运行结果的信息填写到实验报告上,实验完成时上交实验报告。 六、实验内容 (一).完善程序题 1.用scanf函数输入数据,使得x=1.23,y=67.1234。 #include #include int main() { double x,y,z; scanf ("%lf%lf",&x,&y); z=2*x+y/sin(3.1415/4); printf("z=%6.2f",z); return 0; } 输入1.23 67.1234 输出z= 97.39 2. #include int main() {

int str; str=getchar(); putchar(str); return 0; } 输入a 输出a 3.根据下面的输出结果,完善程序 s1=C,ASCII is 67 x=655.35,y=765.43 #include int main() { double x=655.3524,y=765.4271; char s1='C'; printf("s1=%c,ASCII is %d\nx=%6.2f,y=%6.2f",s1,s1,x,y); return 0; } 输出s1=C,ASCII is 67 x=655.35,y=765.43 4.用scanf函数输入数据,使得程序运行结果为a=2,b=’x’,c=’z’。#include int main() { int a,b; scanf("%d%c",&a,&b); printf("a=%d,b='%c',c='%c'",a,b,b+2); return 0; } 输入2x 输出a=2,b=’x’,c=’z’ (二)、阅读程序题 1. #include int main() { int i=19,j=12; float x=3.1415,y=153.125;

组合逻辑电路的设计实验报告

基本知识 数字电路根据逻辑功能的不同特点,可以分成两大类,一类叫组合逻辑电路(简称组合电路),另一类叫做时序逻辑电路(简称时序电路)。组合逻辑电路在逻辑功能上的特点是任意时刻的输出仅仅取决于该时刻的输入,与电路原来的状态无关。而时序逻辑电路在逻辑功能上的特点是任意时刻的输出不仅取决于当时的输入信号,而且还取决于电路原来的状态,或者说,还与以前的输入有关。 【实验目的】 学习组合逻辑电路的设计与测试方法。 【设计任务】 用四-二输入与非门设计一个4人无弃权表决电路(多数赞成则提案通过)。 要求:采用四-二输入与非门74LS00实现;使用的集成电路芯片种类尽可能的少。 【实验用仪器、仪表】 数字电路实验箱、万用表、74LS00。 【设计过程】 设输入为A、B、C、D,输出为L,根据要求列出真值表如下真值表

根据真值表画卡若图如下

由卡若图得逻辑表达式 BD AC CD AB BD AC CD AB BD AC CD AB BD AC CD BD AC AB D BCD C ACD B ABD A ABC ACD BCD ABD ABC L ???=???=++=+++=?+?+?+?=+++=))(()()( 用四二输入与非门实现 B D C

B L C D 实验逻辑电路图

Y 实验线路图

【实验步骤】 1.打开数字电路实验箱,按下总电源开关按钮。 2.观察实验箱,看本实验所用的芯片、电压接口、接地接口的位置。 3.检查芯片是否正常。芯片内的每个与非门都必须一个个地测试, 以保证芯片能正常工作。 4.检查所需导线是否正常。将单根导线一端接发光二极管,另一端 接高电平。若发光二极管亮,说明导线是正常的;若发光二极管不亮时,说明导线不导通。不导通的导线不应用于实验。 5.按实验线路图所示线路接线。 6.接好线后,按真值表的输入依次输入A、B、C、D四个信号,“1” 代表输入高电平,“0”代表输入低电平。输出端接发光二极管,若输出端发光二极管亮则说明输出高电平,对应记录输出结果为“1”;发光二极管不亮则说明输出低电平,对应记录输出结果为“0”。本实验有四个输入端则对应的组合情况有16种,将每种情况测得的实验结果记录在实验数据表格中。 测量结果见下表: 实验数据表格

C++ 实验2 数据类型、运算符、表达式、基本输入输出与结构控制

实验2 数据类型、运算符、表达式、基本 输入输出与结构控制 一、实验目的 1. 了解C++语言中数据类型的意义。 2. 理解常用运行符的意义,C++语言表达式的运行规则。 3. 掌握C++的基本输入输出格式。 4. 掌握各种选择语句的使用。 5. 掌握各种循环语句的使用。 6. 掌握各种转向语句的使用。 7. 学会综合运用控制语句进行简单的编程。 8. 掌握中止语句和预处理语句。 二、知识要点 1.C++语言中数据类型 空类型 void 整 型int 字 符型char 实 型 逻辑型bool 单字符型char 宽字符型w_char 单精度型float 双精度型double 指 针type* 结 构struct 枚 举enum 类class 非基本数据类型 数据类型 基本数据类型 联 合union 数 组type[ ] 自定义typedef

2.基本输入/输出 C++中有2个预定义的流对象: (1)cin是标准输入流对象,键盘为标准设备; (2)cout是标准输出流对象,显示器为标准设备; “<<”和“>>”本来在C++中是被定义为左移位运算符和右移位运算符的,由于在iostream头文件中对它们进行了重载,使它们能用作标准类型数据的输入和输出运算符,所以,在出现它们的程序中必须用#include命令把iostream包含在程序中。例如#include 如果想将“<<”和“>>”用于自己声明的类型的数据中,就不能简单地采用包含iostream 头文件来解决,必须对“<<”和“>>”进行重载。 3.结构控制 C++语言中结构化算法的基本控制结构有3种:顺序结构、选择结构和循环结构。另外还有多个转向语句,如break、continue、goto语句等。 (1)顺序结构 语句1 语句2 …… 语句n+1 (2)选择结构 实现选择结构可用if和switch语句。 ①简单if选择语句 if(表达式) { 语句组 } 当语句组织有一个语句时,可以省略大括号。 ②双重if选择语句 if(表达式) { 语句组1 } else { 语句组2 } ③多重if选择语句 if(表达式) { 语句组1 } else if(表达式2) {

C语言运算符和表达式-实验报告

中山大学南方学院 电子通信与软件工程系 课程名称:高级语言程序设计实践实验题目:运算符和表达式

附:实验报告 专业:年级:完成日期: 学号:姓名:成绩: 一、实验目的 1、能够使用C语言进行简单的算术运算、关系运算和逻辑运算。 2、掌握不同的类型数据之间赋值的规律。 3、进一步熟悉C语言程序的编辑、编译和运行的过程。 二、实验原理 1、用int定义整型变量来存放整数; 2、用float定义浮点数变量来存放小数; 3、使用scanf() 函数从键盘输入两个整型数据,并赋值给两个变量。 三、实验过程 1、算术运算 实验代码如下: #include #include int main()

{ int a=2, b=3; float x=3. 9, y=2. 3; float result; result=(float) (a+b) /2+(int) x%(int) y; return result } 输出结果如图: 2、算术运算 实验代码如下: #include #include int main() { int number; int a1, a2, a3; printf("请输入一个三位数:"); scanf("%d", &number) ; a1=number%10;

number=number/10; a2=number%10; a3=number/10; printf("三位数%d的个位数字是%d,十位数字是%d,百位数字 是%d\n",number,a1, a2, a3) ; return 0; } 输出结果如图: 3、关系运算与逻辑运算 实验代码如下: #include #include int main() { int x; printf("输入x的值:") ; scanf("%d", &x) ; printf("表达式(x>0)的值:%d\n", x>0) ; printf("表达式(x>=-20&&x<=-10)的值:%d\n", x>=-20&&x<=-10) ;

java输入与输出实验报告

java输入与输出实验报告 实验报告:Java 输入与输出 实验目的: 本次实验旨在熟悉和掌握Java中的输入和输出操作,包括标准输入输出、文件输入输出和异常处理。 实验步骤: 标准输入输出: 编写一个Java程序,在控制台上输出"请输入您的姓名:"。 使用Scanner类读取用户输入的姓名,并保存到一个字符串变量中。 输出用户输入的姓名,并在后面加上一句问候语。 运行程序,测试标准输入输出功能。 文件输入输出: 创建一个名为"input.txt"的文本文件,里面写入一些文本内容。 编写一个Java程序,使用File类和Scanner类读取该文本文件的内容。 将读取到的内容输出到控制台上。 运行程序,测试文件输入输出功能。 异常处理: 编写一个Java程序,要求用户输入一个数字。 使用try-catch语句捕获可能发生的NumberFormatException异常。 如果输入的是一个整数,将其平方输出。如果输入的是非数字字符,则输出"输入错误!"。运行程序,测试异常处理功能。 实验结果: 标准输入输出: 用户输入姓名:"张三" 程序输出:"您好,张三!" 文件输入输出: input.txt文件内容:Hello, World! 程序输出:"Hello, World!" 异常处理: 用户输入:"5" 程序输出:"25" 用户输入:"abc"

程序输出:"输入错误!" 实验总结: 通过本次实验,我熟悉了Java中的输入和输出操作。掌握了使用标准输入输出、文件输入输出和异常处理的方法。这些技能对于日后的Java开发工作非常重要。在编写程序时,需要注意输入输出的正确性和异常情况的处理,以提高程序的稳定性和用户体验。

输入输出口实验Logisim平台

广州xx学院 专业班级计算机实验日期2020.6.18 姓名李xx学号xxx 实验名称I/O口实验指导老师xxx (报告内容包括:实验目的、实验设备及器材、实验步骤、实验数据、图表及曲线处理、实验小结等)。

实验名称:I/O口实验 实验场地:计算机仿真 实验设备:Logisim实验平台 1实验目的 熟悉与了解计算机基本I/O口构成原理 按照计算机原理设计输入/输出I/O口,当该位为“1”或“0”时能用作输入源,上电或复位。I/O口外二进制数据开关,适用于外部数据的输入,可跨接发光二极管,也可经缓冲驱动7段数码管显示驱动电路,进行LED数码管显示。即,能以二进制和十六进制两种方式显示I/O口的输入输出状态。发光管在高电平“1”时I/O口发光点亮。 熟悉与了解准双向I/O口的构成原理。 通过本实验,理解计算机基本I/O口驱动及准双向I/O口电路工作原理。 2 实验要求 1)设计LED计数电路 如1图所示,使用了四个或门来控制输出。 其中,第一个或门由全部五个输入控制,第二个或门由后四个输入控制,第三个或门由后三个输入控制,第四个或门由后两个输入控制,第五个输入单独控制一个输出。 图1 四个或门控制电路图 然后如图2所示,作为LED计数电路进行封装。 图2 LED计数电路图

2)设计5输入的2进制数据编码器 如图3所示,使用excel真值表,设计5输入(5、4、3、2、1)的3位输出的2进制编码。 图3 真值表 其借助Excel真值表自动生成表达式即可生成逻辑表达式。表达式化简后即可生成逻辑关系和逻辑电路。5输入(5、4、3、2、1)3输出的2进制编码逻辑电路如图4所示。 图4 四个或门来控制电路图 然后如图5所示,作为LED计数电路进行封装。 图5 编码器电路图图6 7段LED图

C语言程序设计实验报告——实验2 数据类型、运算符和表达式

凯里学院 C 语言程序设计 实验报告 ××××× 专业×× 年级×× 班,学号×××××× 姓名××成绩 合作者 实验日期 年 月 日 指导教师 评阅日期 年 月 日 实验二 数据类型、运算符和表达式 一、实验目的: (1)掌握C 语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。 (2)学会使用C 的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。 (3)掌握C 语言的输入和输出函数的使用 (4)进一步熟悉C 程序的编辑、编译、连接和运行的过程,学会使用step by step 功能。 (5)认真阅读教材数据类型,算术运算符和表达式,赋值运算符和表达式部分内容。 二、实验内容: (1)输人并运行下面的程序 #include void main() { char c1,c2; c1='a'; c2='b'; printf("%c %c\n",c1,c2); } (2)按习题3. 7的要求编程序并上机运行 该题的要求是: 要将“China ”译成密码,密码规律是:用原来字母后面的第4个字母代替原来的字母。 例如,字母“A ”后面第4个字母是“E ”,用“E ”代替“A ”。因此,“China ”应译为“Glmre" 。 请编一程序,用赋初值的方法使。cl ,c2,c3,c4,c5五个变量的值分别为‘C ’、‘h ’、‘i ’、‘n ’、‘a ’,经过运算,使cl ,c2,c3,c4,c5分别变为‘G ’、‘l ’、‘m ’、‘r ’、‘e ’,并输出。 三、实验步骤: (1)输人并运行下面的程序 #include void main() { char c1,c2; c1='a'; c2='b'; printf("%c %c\n",c1,c2); } 装订线 装订线

组合逻辑电路实验报告

组合逻辑电路实验报告 组合逻辑电路的设计 组合逻辑电路的设计与分析过程相反,其步骤大致如下: (1)根据对电路逻辑功能的要求,列出真值表; (2)由真值表写出逻辑表达式; (3)简化和变换逻辑表达式,从而画出逻辑图。 组合逻辑电路的设计,通常以电路简单,所用器件最少为目标。在前面所介绍的用代数法和卡诺图法来化简逻辑函数,就是为了获得最简的形式,以便能用最少的门电路来组成逻辑电路。但是,由于在设计中普遍采用中、小规模集成电路(一片包括数个门至数十个门)产品,因此应根据具体情况,尽可能减少所用的器件数目和种类,这样可以使组装好的电路结构紧凑,达到工作可靠而且经济的目的。 下面举例说明设计组合逻辑电路的方法和步骤。 例1:试用2输入与非门和反相器设计一个3输入(I0、I1、I2) 、3输出(L0、L1、L2)的信号排队电路。它的功能是:当输入I0为1时,无论I1和I2为1还是0,输出L0为1,L1和L2为1;当I0为0且I1为1,无论I2为1还是0,输出L1为1,其余两个输出为0;当I2为1且另外两个均为0时,输出L2为1,其余两个输出为0。如I0、I1 、I2均为0,则L0、L1、L2也均为0。 解: (1)根据题意列出真值表如下: (2)根据真值表写出各输出逻辑表达式: (3)根据要求将上式变换为与非形式:

由此可画出逻辑图,如下图所示。该逻辑电路可用一片内含四个2输人端的与非门(图中蓝灰色部分)(比如74LS00)和另一片内含六个反相器(74LS04)的集成电路组成。原逻辑表达式虽然是最简形 式,但它需一片反相器和一片3输入端的与门才能实现(见下图),器件数和种类都不能节省,而且三输入端的与门器件不如二输入端的与非门常见。由此可见,最简的逻辑表达式用一定规格的集成器件实现时,其电路结构不一定是最简单和最经济的。设计逻辑电路时应以集成器件为基本单元,而不应以单个门为单元,这是工程设计与理论分析的不同之处。 例2 试设计一可逆的4位码变换器。在控制信号C=1时,它将8421码转换为格雷码;C=0时,它将格雷码转换为8421码。 解: (1)列出真值表如下:

高级语言程序设计实验报告3

武汉工商学院电子商务学院实验报告 实验课程名称高级语言程序设计实验序号 3 课程性质■必修□选修 实验项目名称程序的输入与输出实验类型□演示性■验证性□综合性□设计性 专业电子商务年级2018级层次□专科■本科学号1850201038 姓名王芳班级本2 实验日期指导教师刘媛成绩 一、实验目的和要求 掌握各种类型的数据在C程序中的输入、输出方法; 掌握printf()函数中的输出格式控制; 掌握scanf()函数中的输入格式控制; 掌握putchar()函数和getchar()函数的使用方法。 二、实验基本步骤和内容 (1)输入程序: #include main() { char m=97,n; printf(“请输入一个字符:\n”); n=getchar(); putchar(m); putchar(‘\n’); putchar(n); putchar(‘\n’); } 分析上述程序的运行结果并说明理由。 (2)输入程序: #include main() { int a=20;

float b=12.3456; printf("%-5d#,%d*%6.2f\n",a,a,b); } 分析上述程序的运行结果并说明理由。 (3)输入程序: #include main() { int a; float b; scanf("%d,%f",a,b); printf("%d*%f\n",a,b); } 改正上述程序中的错误,然后分析改正后程序的运行结果并说明理由。 如果将上述程序的第5行语句改成:scanf("%o,%f",a,b);分析所得的结果并改正。 (4)输入程序: #include main() { int a,b; scanf("%2d%*3d%2d",&a,&b); printf("%d*%d\n",a,b); } 运行程序,输入1234567,分析所得结果。 如果将上述程序的第4行语句改成:scanf("%3d%3d",&a,&b);程序运行将会得到什么结果? (5)编写程序: 要求输入某职工的工资和奖金,并求出总收入(注意保留2位小数)显示输出。 注意:要求将实验过程截图,并将截图放在第三部分实验结果与分析,对实验过程中可能出现的问题做出总结。 三、实验结果与分析(实验过程中存在的问题、不足,实验心得体会及感受)

数据类型、运算符和表达式实验报告

广州大学实验报告 学院商学院 专业、班级 姓名、学号 课程名称C程序设计 项目名称数据类型、运算符和表达式实验 实验时间:2012 年 3 月20 日

数据类型、运算符和表达式实验报告 开课实验室:2012年3月20日

d=5.670000,e=-6.780000 f=1234.567890,g=0.123457 m=50000,n=-600000 p=32768,q=40000 第3页 四、实验结果及分析 实验一输出结果为:a,b值互换。 分析:在C程序设计中,两个值互换需要一个中间变量来储存数据,如果直接交换会导致其中一个数据丢失。 实验二分析:实验二为自己设计的程序。在设计这个程序是要注意scanf的用法。Scanf 为格式输入符,在输入字符时要注意字符输入方式。在本次实验中其调 用格式为:scanf("<格式化字符串>",<地址表>); 实验三分析:输出格式的不同会导致输出结果的不同。将负数赋值给无符号变量时,无符号变量会将这个负值的符号也纳入计算范围从而返回一个正值,导 致最后输出结果不正确。这个实验让我认识到在设计程序时要注意输出 格式的选择。 实验四分析:实验四更加强调个语句中在程序的含义。 程序为:printf("d=% f,e=% f\n",d,e); printf("f=% f,g=% f\n",f,g); 输出结果为: 当程序改为:printf("d=%-6.2f,e=%-6.2f\n",d,e); printf("f=%-15.6f,g=%-15.10f\n",f,g); 输出结果为: 继续将程序改边为:printf("d=%-6.2f\te=%-6.2f\n",d,e);

相关主题
相关文档
最新文档