实验三 运行符与表达式
- 格式:doc
- 大小:39.00 KB
- 文档页数:4
**大学程序设计基础实验报告实验名称:实验三分支结构实验目的:1、掌握IF-ELSE语句使用。
2、掌握ELSE-IF语句使用。
3、熟悉SWITCH语句使用。
实验内容:在本地电脑中新建一个文件夹,用于存放C程序,文件夹的名字要求是“学号姓名-实验序号”,如E:\ 1920115555张三-03。
启动C-Free,完成如下各题。
1、编程题:输入参数a,b,c,求一元二次方程ax2+bx+c=0的根(①a、b、c都为0,②a和b为0,c不为0,③a为0,b不为0,c任意,④a不为0,且a、b、c满足b2-4ac ≥0,⑤a不为0,且a、b、c满足b2-4ac<0)。
2、编程题:输入职工的月薪salary,计算并输出应缴纳的个人所得税tax。
tax=rate * (salary–850),rate的计算方式如下:当salary <= 850,则rate = 0;当850 < salary <= 1350,则rate = 5%;当1350 < salary <= 2850,则rate = 10%;当2850 < salary <= 5850,则rate = 15%;当salary > 5850,则rate = 20%;。
3、编程题:根据输入的3个边长a、b、c,判断它们是否能构成三角形,若能构成三角形,则进一步判断此三角形是哪种类型的三角形(等边三角形、等腰三角形、直角三角形和一般三角形。
等腰直角算作等腰)。
4、编程题:输入一个形式如“操作数运算符操作数”的表达式,对2个整数进行乘、除或求余运算。
【请分别用if语句和switch语句实现此题功能】上交作业的方法:1.将程序代码及注释和运行程序的窗口复制到实验结果下方对应的题号上,并把这次实验上机操作中遇到的问题及解决方法、心得等填好完成实验报告。
2.保存以上所有按要求已调试通过,并形成.c(或.cpp)和.exe文件到以自己的“学号姓名-03”命名的文件夹中,并将以自己的“学号姓名”命名的文件夹压缩后上交到ftp://10.172.250.252:1161中的“作业上传”文件夹下的“报告上交02”文件夹下的子文件夹“源文件压缩上交”中,同时把以“学号姓名-03”命名的word文档上交到“报告上交03”文件夹下的另一子文件夹“word文件上交”中。
实验一:设计简单的VB 应用程序一、实验目的1.掌握Visual Basic 启动和退出的方法。
2.熟悉Visual Basic 的集成开发环境。
3.掌握Visual Basic 程序设计的基本步骤,了解VB 程序的编写、保存和编译的方法过程。
4.初步了解几个常用基本控件控件(标签、命令按钮和文本框)的使用方法。
二、实验类型综合三、实验时间:2013-3-8四、实验任务1、启动Visual Basic ,然后创建一个“标准 EXE ”工程(保存在D 盘以自己学号命名的文件夹中,文件名和窗体名均为SJT ),并了解Visual Basic 集成开发环境下各组成部分及其作用。
2、编一程序,计算任意输入的正整数的平方根。
3、编写一个应用程序,界面如图1-1所示。
窗体中文字“VB 应用程序!”为一标签控件,单击标题为“放大”的命令按钮,则“VB 应用程序!”的字号放大一号,单击“缩小”按钮则反之;同时,窗体中还有4个含某种指向图案的按钮,若单击某个按钮,则使“VB 应用程序!”向该按钮所指向的方向移动50Twip 。
(提示:四种指向的图案可以在Visual Basic 安装目录中的“…graphics\icon\Arrows ”子目录中找到,名称分别为arw07dn.ico 、arw07lt.ico 、arw07rt.ico 和arw07up.ico )五、实验要求 写出实验报告,内容是:1、第1小题的操作步骤2、第2、3题1).程序的界面设计。
2).程序主要代码。
3).运行结果(输入与输出)。
4).实验总结。
(写上你自己的总结。
可以从以下几个方面来总结:你在编程过程中花时多少?时间是怎么分配的?多少时间在思考问题?遇到了哪些难题?你是怎么克服的?你对你的程序的评价?你的收获有哪些?)图1-1 实验1-2程序运行实验二:数据的输入和输出一、实验目的1.掌握常量和变量、表达式的基本概念和正确书写格式。
2.掌握基本语句(Print语句、赋值语句、Dim语句等)的使用;3、掌握常用函数的正确使用方法;4、掌握数据的动态输入InputBox和信息提示MsgBox的基本使用方法。
实验三 选择结构程序设计一、实验目的与要求1. 理解C 语言表示逻辑量的方法,学会正确使用逻辑运算符和逻辑表达式。
2. 掌握利用if 结构实现选择结构的方法。
3. 掌握利用switch 结构实现多分支选择结构。
4. 结合程序掌握一些简单的算法,学习调试程序5. 实验4学时二、实验内容1.程序改错题改正下面程序中的错误。
输入实数x ,计算并输出下列分段函数f(x)的值(保留1位小数)。
)100(1=x x==)(x f y)100(≠x x输入输出示例1(改正后程序的运行结果)Enter x :100f )=输入输出示例2(改正后程序的运行结果)Enter x :23f )=源程序(有错误的程序)#include<>#include<>void main(void){double x;printf("Enter x: \n");scanf("=%f", x);if (x = 100) {y = 1/sqrt(x)}else (x != 100) {y = x;}printf("f(%.2f) = %.1f\n",x,y);}答:#include<>#include<>void main(void){double x,y;printf("Enter x:\n");scanf("%lf",&x);if (x=100)y = 1/sqrt(x);elsey= x;printf("f(%.2lf)=%.1lf\n",x,y);}2.一般编程题编程题1输入任意三个整数a,b,c ,求3个数中的最大值和最小值。
答:#include <>void main(){int a,b,c;printf("请输入三个整数:");scanf("%d %d %d",&a,&b,&c);if (a>=b)t=a,a=b,b=t;if (a>=c)t=a,a=c,c=t;if (b>=c)t=b,b=c,c=t;printf("最小值为:%d\n",a);printf("最大值为:%d\n",c);}编程题2输入x ,计算并输出下面分段函数f(x)的值(保留2位小数)。
Matlab实验三答案实验三 MATLAB语⾔的程序设计⼀、实验⽬的:1、熟悉MATLAB程序编辑与设计环境2、掌握各种编程语句语法规则及程序设计⽅法3、函数⽂件的编写和设计4、了解和熟悉跨空间变量传递和赋值⼆、实验基本知识:1、程序流程控制语句for循环结构语法:for i=初值:增量:终值语句1……语句nend说明:1.i=初值:终值,则增量为1。
2.初值、增量、终值可正可负,可以是整数,也可以是⼩数,只须符合数学逻辑。
while 循环结构语法:while 逻辑表达式循环体语句end说明:1、whiIe结构依据逻辑表达式的值判断是否执⾏循环体语勾。
若表达式的值为真,执⾏循环体语句⼀次、在反复执⾏时,每次都要进⾏判断。
若表达式的值为假,则程序执⾏end之后的语句。
2、为了避免因逻辑上的失误,⽽陷⼊死循环,建议在循环体语句的适当位置加break语句、以便程序能正常执⾏。
(执⾏循环体的次数不确定;每⼀次执⾏循环体后,⼀定会改变while 后⾯所跟关系式的值。
)3、while循环也可以嵌套、其结构如下:while逻辑表达式1循环体语句1while逻辑表达式2循环体语句2end循环体语句3endelse if 表达式2(可选)语句2else(可选)语句3endend说明:1.if结构是⼀个条件分⽀语句,若满⾜表达式的条件,则往下执⾏;若不满⾜,则跳出if结构。
2.else if表达式2与else为可选项,这两条语句可依据具体情况取舍。
3.注意:每⼀个if都对应⼀个end,即有⼏个if,记就应有⼏个end。
switch-case结构语法:switch表达式case常量表达式1语句组1case常量表达式2语句组2……otherwise语句组nend说明:1.switch后⾯的表达式可以是任何类型,如数字、字符串等。
2.当表达式的值与case后⾯常量表达式的值相等时,就执⾏这个case后⾯的语句组如果所有的常量表达式的值都与这个表达式的值不相等时,则执⾏otherwise后的执⾏语句。
实验三循环结构程序设计(参考答案)1、设计程序sy3-1.c,计算并输出n(包括n)以内所有能被5或9整除的自然数的倒数之和。
例如输入n 的值为20时,输出0.583333。
算法分析:穷举1~n(含n)之间的每一个整数,能否被5或者9整除。
如果能,则把它的倒数累加到累加器里去。
因为能被5整除的自然数,应该至少从5才可能,所以循环控制变量i可以5开始。
参考答案:#include<stdio.h>void main(){int n,i;double s=0; //累加器要赋初值为0,结果为小数,所以定义为实数类型printf("请输入n的值:");scanf("%d",&n);for(i=5;i<=n;i++) //穷举小于等于n的自然数if(i%5==0||i%9==0)s=s+1.0/i;// 因为i是整数类型,所以1/i的值为0printf("s=%f\n",s);}运行结果:2、设计程序sy3-2.c,计算并输出给定整数n的所有因子(不包括1与自身)之和。
例如,输入n的值是856时,应输出763。
算法分析:因子,就是能整除n的值。
所以从2到n-1穷举每个数是不是它的因子,是就累加到s中。
参考答案:#include<stdio.h>void main(){int s=0,n,i;printf("请输入n:");scanf("%d",&n);for(i=2;i<n;i++) //穷举所有可能为因子的整数if(n%i==0) //因子即是能整除n的数s=s+i;printf("%d的所有因子之和是:%d\n",n,s);}运行结果:3、设计程序sy3-3.c,输入一个整数,要求将该整数上各位数字是偶数的数取出,并按原来从高位到低位的顺序组成一个新数。
实验一 C语言的运行环境、运行过程和表达式的使用一、目的与要求1、了解Dos、Windows环境下C语言的运行环境,了解所用的计算机系统的基本操作方法,学会独立使用该系统。
2、了解在该系统上如何编辑、编译、连接和运行一个C程序。
3、通过运行简单的C程序,初步了解C源程序的特点。
4、掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。
5、学会使用C的有关算术运算符,以及包含这些运算符的表达式二、实验例题【例1】编程实现在屏幕上显示如下三行文字Hello, world !Wolcome to the C language world!Everyone has been waiting for.在Turbo C的集成环境下,键入如下源文件。
敲Alt+F组合键打开File菜单,File菜单中Write to或save as选项可将默认noname.c文件名改为任意文件名。
程序example.c如下:main(){printf("Hello,World!\n");printf("Wolcome to the C language world!\n");printf("Everyone has been waiting for.\n");}然后用Ctrl+F9执行example.c,用Alt+F5查看结果,即在屏幕上显示题目要求的三行文字。
按回车键重新返回Turbo C的编辑环境。
注意,在运行程序之前最好先存盘。
【例2】输入并运行程序,写出运行结果。
main(){int a,b,sum;a=123;b=456;sum=a+b;printf(“sum is %d\n”,sum);}运行方法同上,最后结果为:sum is 579。
【例3】输入并运行程序,写出运行结果。
main(){int a,b,c;int max(int,int);scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“max=%d”,c);}int max(int x,int y){int z;if (x>y) z=x;else z=y;return(z);}这个程序的功能是对于任意输入的两个整数,输出较大的那个数。
c程序设计基础及实验C程序设计基础及实验一、引言C程序设计是计算机科学与技术专业中非常重要的一门课程,也是计算机专业学习的基础。
通过学习C程序设计,可以培养学生的编程思维和解决问题的能力。
本文将介绍C程序设计基础知识以及实验内容,帮助读者更好地理解和掌握这门课程。
二、C程序设计基础知识1. C语言概述C语言是一种通用的、面向过程的编程语言,具有简洁、高效、灵活等特点。
它是由贝尔实验室的Dennis Ritchie于1972年开发的。
2. 变量与数据类型在C语言中,我们可以使用变量来存储数据,并通过数据类型来定义变量的类型。
常见的数据类型包括整型、浮点型、字符型等。
3. 运算符与表达式C语言中有多种运算符,包括算术运算符、关系运算符、逻辑运算符等。
通过运算符和表达式,可以进行各种数学运算和逻辑判断。
4. 控制语句在C语言中,可以使用控制语句来实现程序的流程控制。
常见的控制语句包括条件语句、循环语句和跳转语句。
5. 函数与库函数函数是C语言中的重要概念,可以将程序划分为若干个模块,提高代码的可读性和复用性。
此外,C语言还提供了丰富的库函数,可以方便地实现各种功能。
三、C程序设计实验内容1. 实验1:Hello World程序通过编写一个简单的Hello World程序,了解C语言的基本语法和编译运行过程。
2. 实验2:计算两个数的和与差编写一个程序,输入两个数,计算它们的和与差,并输出结果。
3. 实验3:判断奇偶数编写一个程序,输入一个整数,判断它是奇数还是偶数,并输出判断结果。
4. 实验4:求解一元二次方程编写一个程序,输入一元二次方程的系数,求解方程的根,并输出结果。
5. 实验5:计算斐波那契数列编写一个程序,输入一个正整数n,计算斐波那契数列的第n项,并输出结果。
四、总结与展望通过学习C程序设计基础知识和实验内容,我们可以初步掌握C语言的基本语法和编程技巧。
在实践中,我们可以通过编写各种程序来实现各种功能,提高我们的编程能力。
《C语言程序设计》实验报告2012~2013学年第二学期班级姓名学号指导教师实验一实验项目名称:C程序的运行环境和运行C程序的方法所使用的工具软件及环境:Visual C++ 6.0一、实验目的:1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序;2.通过运行简单的C程序,初步了解C源程序的特点。
二、预习内容:教材《C语言程序设计教程》第1章。
三、实验内容:1. 在Visual C++ 6.0环境下输入并运行下面的程序:#include <stdio.h>int main( ){printf("This is a C program.\n");return 0;}2. 在Visual C++ 6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序无语法错误,然后运行程序,并观察分析运行结果。
#include <stdio.h>int main( ){int a,b,suma=3;b=4;sun=a+b;print(“%d+%d=%d\n”,a,b,sum);return 0;}四、实验结果:1. 运行结果(或截图):2. (1) 改正后的源程序:(2) 运行结果(或截图):五、思考题:1. 一个C程序上机的步骤有哪些?答:2. 组成C程序的基本单位是函数,一个函数包括哪几个部分?答:成绩指导教师签名实验二实验项目名称:数据类型、运算符和表达式所使用的工具软件及环境:Visual C++ 6.0一、实验目的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使用方法;3. 掌握基本算术运算符及其表达式的使用方法;4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。
二、预习内容:教材《C语言程序设计教程》第2章。
三、实验内容:1. 在Visual C++ 6.0环境下输入下面的程序,编译、连接、调试该程序。
实验三 MATLAB 的符号运算一 实验目的:1.掌握符号对象的创建及符号表达式化简的基本方法;2.掌握符号微积分、符号方程的求解的基本方法。
二 实验装置:计算机三 实验内容:1.符号对象的创建(1) 建立符号变量使用sym 函数把字符表达式'2*sin(x)*cos(x)'转换为符号变量。
2.符号表达式的化简(1)因式分解对表达式f=x 3-1 进行因式分解。
(2) 符号表达式的展开对符号表达式f=cos(x+y)进行展开。
(3)符号表达式的同类项合并对于表达式f=(2x 2*(x+3)-10)*t ,分别将自变量x 和t 的同类项合并。
(4)符号表达式的化简(5)符号表达式的分式通分对表达式 进行通分。
(6)符号表达式的替换用新变量替换表达式a+b 中变量b 。
3.符号微积分(1) 符号极限计算表达式 的极限。
(2)符号微分计算表达式f=sinx 的微分。
(3)符号积分。
例:简化32381261+++=xx x f 22x y y x f +=xtgx x lim 0→()⎰+dzz x31计算表达式 的积分。
(4)符号求和计算表达式 4.符号方程的求解求解代数方程组 四 实验要求:1.按照要求预习实验;2.在MATLAB 中运行实验程序验证仿真结果;3. 按照要求完成实验报告。
.10005∑k⎪⎩⎪⎨⎧=--=-+=+-043035218472z y x z y x z y x。
中山大学南方学院电子通信与软件工程系课程名称:高级语言程序设计实践实验题目:运算符和表达式附:实验报告专业:年级:完成日期:学号:姓名:成绩:一、实验目的1、能够使用C语言进行简单的算术运算、关系运算和逻辑运算。
2、掌握不同的类型数据之间赋值的规律。
3、进一步熟悉C语言程序的编辑、编译和运行的过程。
二、实验原理1、用int定义整型变量来存放整数;2、用float定义浮点数变量来存放小数;3、使用scanf() 函数从键盘输入两个整型数据,并赋值给两个变量。
三、实验过程1、算术运算实验代码如下:#include <stdio.h>#include <stdlib.h>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 <stdio.h>#include <stdlib.h>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 <stdio.h>#include <stdlib.h>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) ;printf("表达式(x>=100||x<10)的值:%d\n", x>=-20&&x<=-10) ;printf("表达式(x>20&&x%3==0的值:%d\n", x>20&&x%3==0) ;if(x%5==0&&x%3==0)printf("yes\n") ;elseprintf ("no\n") ;return 0;}输出结果如图:4、综合任务实验代码如下:#include <stdio.h>#include <stdlib.h>int main(){int grad1, grad2;scanf("%d%d", &grad1, &grad2) ;printf("表达式(grad1>=0&&grad1<=100)值:%d\n",grad1>=0&&grad1<=100);printf("表达式(grad2>=0&&grad2<=100)值:%d\n",grad2>=0&&grad2<=100);printf("%d", grad1>grad2? grad1:grad2) ;return 0;}输出结果如图:四、思考并回答以下问题1、举例说明逻辑运算符的短路特性。
题目要求:四种变量的使用配置环境变量元字符和正则表达式引号1. 本地变量$ var1="hello Linux" //定义本地变量var1$ read var2 //定义本地变量vae2$ echo $var1 $var2 //显示本地变量的值2. 环境变量$ env //显示系统的环境变量$ echo $PATH //显示搜索路径变量PATH$ MYNAME="zhangs" //定义本地变量MYNAME$ export MYNAME //将本地变量MYNAME输出为环境变量下面观察环境变量与本地变量作用范围的区别$ echo $var1 $MYNAME //显示本地变量和环境变量输出:hello Linux zhangs$ bash //创建子进程bash$ echo $var1 $MYNAME //显示本地变量和环境变量输出:zhangs$ exit //退出子进程bash$ echo $var1 $MYNAME输出:hello Linux zhangs通过修改环境变量PS1可修改提示符$ PS1=$ //将提示符变为$ps3. 位置变量使用编辑器vi 编辑下列shell 脚本#!/bin/bashecho $0 $1 $2 $3将上述两行脚本保存为文件locat.sh$ chmod +x locat.sh //增加执行权限$ ./locat.sh you me he观察显示结果,理解位置变量的定义。
4. 预定义变量用编辑器vi编辑以下shell脚本#!/bin/bashecho $#echo $*将上述三行保存为文件predef.sh$chmod +x predef.sh //增加执行权限$ ./predef.sh Linux Unix Windows观察运行结果,理解预定义变量的含义。
预定义变量有3个。
分别是:Linux Unix Windows5. 配置环境变量可通过用户主目录下的配置文件,改变系统的启动参数,例如:可通过修改.bash_profile修改环境变量PATH,具体操作如下:$ cd ~ //进入用户的主目录$ vi .bash_profile //编辑配置文件若文件中有下列行:PATH= P A T H ; PATH;PATH;HOME/bin则在PATH路径中增加当前路径,修改后外:PATH= P A T H : PATH:PATH:HOME/bin:.$ exit //退出用该用户的账号重新登录系统执行当前目录下的locat.sh脚本无需制定当前路径,例如:$ locat.sh myname is zhangs6.元字符与正则表达式$ cd ~ //进入用户主目录,中间有空格# ls -l / >list //以详细方式列出根目录下的所有文件信息,重定向至list文件$ grep ^d list // 查询所有目录$ ls *.sh //列出所有后缀名为.sh的shell脚本文件7. 反引号、单引号和双引号$ abc="pwd" //没有空格$ echo '$abc' //只显示单引号内的字符串,abc$ echo "$abc" //显示变量的值,pwd$ echo `"$abc"` //"和`的综合使用,/root$ echo "`pwd`" //为"内的`作出解释,/root$ echo *$ echo "*" //屏蔽元字符的特定含义,*$ echo ‘*’//观察显示结果,*$ echo \* //观察显示结果,*。
实验教案}三、实验内容(按要求设计以下程序,并调试分析运行结果,此部分完成在实验报告上)1、设计程序sy3-1.c,要求打印小学九九乘法表。
算法分析:根据九九乘法表可知,该表共有9行,第i行有i个表达式,而且表达式中的操作数和行、列数相关,因此可以用嵌套的双重循环来实现,外循环控制行数(循环变量从1到9),内循环控制每行的表达式个数(循环变量从1变到i)。
参考答案:# include <stdio.h>void main(){int i,j;for(i=1;i<=9;i++){for(j=1;j<=i;j++)printf("%d*%d=%-5d",j,i,i*j);printf("\n");}}运行结果:2、设计程序sy3-2.c,要求编程计算x n,其中x和n均由键盘输入2。
算法分析:要计算x的n次方,即是n次x相乘,其中x可以是整型或实型,而n必须是整型;另外要考虑结果的类型,若x和n比较大,一般的int型容易产生溢出。
参考答案:# include <stdio.h>void main(){int i,n;float x,p=1; /*累乘器要赋初值1*/printf("Input x,n: ");scanf("%f,%d",&x,&n); /*以逗号分隔输入的已知数据x和n的值*/for(i=1;i<=n;i++)p=p*x;printf("%g^%d=%g\n",x,n,p);}运行结果:3、设计程序sy3-3.c,已知祖父年龄70岁,长孙20岁,次孙15岁,幼孙5岁,问要过多少年,三个孙子的年龄之和同祖父的年龄相等,试用单重循环结构编程实现。
4、设计程序sy3-4.c,有一数列:2/1,3/2,5/3,8/5,…求出这个数列的前10项之和。
实验指导实验一 Visual C++6。
0开发环境使用1.实验目的(1)熟悉Visual C++6。
0集成开发环境。
(2)掌握C语言程序的书写格式和C语言程序的结构。
(3)掌握C语言上机步骤,了解C程序的运行方法.(4)能够熟练地掌握C语言程序的调试方法和步骤2。
实验内容输入如下程序,实现两个数的乘积。
#include (stdio。
h);Int main(){x=10,y=20p=prodct(x,t)printf(“The product is :”,p)int prodct(int a ,int b )int cc=a*breturn c}(1)在编辑状态下照原样键入上述程序。
(2)编译并运行上述程序,记下所给出的出错信息。
(3)再编译执行纠错后的程序.如还有错误,再编辑改正,直到不出现语法错误为止。
3.分析与讨论(1)记下在调试过程中所发现的错误、系统给出的出错信息和对策。
分析讨论成功或失败的原因.(2)总结C程序的结构和书写规则。
实验二数据类型、运算符和表达式1.实验目的(1)理解常用运行符的功能、优先级和结合性。
(2)熟练掌握算术表达式的求值规则。
(3)熟练使用赋值表达式。
(4)理解自加、自减运算符和逗号运算符(5)掌握关系表达式和逻辑表达式的求值2.实验内容(1)整数相除#include<stdio.h〉int main(){int a=5,b=7,c=100,d,e,f;d=a/b*c;e=a*c/b;f=c/b*a;printf(”d=%d , e=%d ,f=%d\n”,d,e,f);return 0;}(2)自加、自减运算#include〈stdio.h〉int main(){int a=5,b=8;printf("a++=%d\n",a++);printf("a=%d\n”,a);printf("++b=%d\n”,++b);printf(”b=%d\n",b);return 0;}(3)关系运算和逻辑运算#include<stdio.h>int main(){int a=5,b=8,c=8;printf("%d,%d,%d,%d\n”,a==b&&a==c,a!=b&&a!=c,a〉=b&&a>=c,a 〈=b&&a〈=c);printf(”%d,%d\n",a<=b||a>=c,a==b||b==c);printf("%d,%d,%d,%d\n",!(a==b),!(a>=b),!(a>=c),!(a〈=b));return 0;}(1)在编辑状态下输入上述程序。
广州大学实验报告学院商学院专业、班级姓名、学号课程名称C程序设计项目名称数据类型、运算符和表达式实验实验时间:2012 年 3 月20 日数据类型、运算符和表达式实验报告开课实验室:2012年3月20日d=5.670000,e=-6.780000f=1234.567890,g=0.123457m=50000,n=-600000p=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);printf("f=%-15.6f\tg=%-15.10f\n",f,g);输出结果为:以上3种都是改变了输出格式使输出数据的有效数字改变。
实验三分⽀结构程序设计(设计性实验)安徽⼯程⼤学Python程序设计实验报告班级物流192 姓名许雷雷学号3190505215成绩⽇期 2020.4.8 指导⽼师修宇实验三分⽀结构程序设计(设计性实验)【实验⽬的】(1)学会正确使⽤⽐较运算符与⽐较表达式、逻辑运算符和逻辑表达式(2)熟练⽤if语句设计选择结构程序;【实验条件】PC机或者远程编程环境【实验内容】1、完成三个编程题。
(1)设计⼀个货币转换程序问题描述:参考温度转换实例编制⼀个货币转换程序假定美元/⼈民币汇率为:6.7744 : 1输⼊输出格式例1: 输⼊⼀个美元货币值:$32.3当输⼊美元时,返回“美元转换为⼈民币后是:¥32元”例2: 输⼊⼀个⼈民币货币值:¥10.1 ,当输⼊⼈民币时,返回“⼈民币转换为美元后是:$32美元如下图(2)求解数学表达式的值问题描述从键盘输⼊x的值,根据公式计算并输出x和y的值直接输出y的值,保留⼩数点后两位,不需要额外信息.如下图(3)新版个⼈所得税计算问题描述:请编写⼀个程序,根据⽤户输⼊计算个⼈所得税。
1. ⽤户输⼊是个⼈薪⾦扣险所得。
(1)约定⽤户输⼊为以⼈民币元为单位的零或者正数。
不要增加额外的提⽰信息。
(2)如果⽤户输⼊了负数,提⽰“请输⼊正数!”。
其他错误输⼊可以不予处理。
2. 计算应缴纳的税⾦(保留⼩数点后⼀位)。
我国的个⼈所得税采⽤“超额累进税率”计算⽅法,简化公式如下:缴税 = (个⼈薪⾦扣险所得 – 个税免征额)* 税率其中,个税免征额为5000元,税率根据应纳税额数量⽽不同,如下表所⽰:如下图思考题尝试⽤IDLE 运⾏你的程序,如果⽤户输⼊不符合输⼊格式时,程序会运⾏出现什么情况?1.货币转换:提⽰输⼊错误,请输⼊带有符号的货币值。
2.数学公式求解:提⽰输⼊格式错误。
3.新版个⼈所得税计算:提⽰输⼊⽆意义。
你认为如何从哪⼏⽅⾯修改程序让计算机与⼈的交互更加友好语⾔格式。
C语言程序设计实验指导书实验一数据类型及简单程序设计一、实验目的1.掌握C语言数据类型,熟悉变量的定义及赋值方法。
2.掌握不同的类型数据之间赋值的规律。
3.学会使用C的运算符及表达式,特别是自加(++)自减(——)运算符的使用。
4.学会使用VC调试程序的方法。
二、实验内容和步骤问题1:输入并运行下面的程序main( ){char c1,c2;c1=’a’;c2=’b’;printf(“%c %c\n”,c1,c2);}①程序运行结果为?②增加一条语句:printf(“%d %d\n”,c1,c2);再运行程序,运行结果为?问题2:输入并运行下面的程序(转义字符使用)main( ){char c1,c2,c3,c4,c5;c1=’x’;c2=’y’;c3=’z’;c4=’\101’;c5=’\102’;printf(“x%c y%c\tz%c\n”,c1,c2,c3);printf(“\t\’%c\’ \”%c\”\n”,c4,c5);}在上机前先用人工分析程序,写出应得结果,上机后将二者对照。
问题3:输入并运行下面的程序main( ){int i,j,m,n;i=6;j=8;m=++i;n=j++;printf(“%d,%d,%d,%d\n”,i,j,m,n);}①运行程序,注意i、j、m、n个变量的值为?。
②将第4、5行改为:m=i++;n=++j;运行程序,注意i、j、m、n个变量的值为?。
③将程序改为:main( ){int m,n;m=6;n=8;printf(“%d,%d\n”,m++,n++);}运行程序,注意输出结果的变化为?。
④在③的基础上,将printf语句改为:printf(“%d,%d\n”,++m,++n);运行程序,注意输出结果的变化为?。
⑤再将printf语句改为:printf(“%d,%d,%d,%d \n”,m,n,m++,n++);运行程序,注意输出结果的变化为?。
实验四运行符与表达式
一、目的和要求
1、理解常用运行符的意义。
2、掌握C语言表达式的运行规则。
二、实验内容和步骤
1、编写一个C语言程序,测试下列各表达式
i , j
i + 1, j + 1
i + + , j + +
+ + i, + + j
i +++j , i + + + + + j
+ + i + + + + + j + +
(提示:通过下例即可测试“i+++j”的计算过程。
#include <stdio.h>
main()
{
int i=1,j=1;
printf("i+++j = %d\n", i+++j);
printf("i=%d",i);
printf("j=%d",j);
}
)
要求在各表达式中i和j都分别有相同的初值。
在实验中注意下列问题:(1)哪些表达式是错误的?为什么?
(2)认真分析并理解+,++,++i,i++的意义和优先级别。
2、通过下例分析总结运算符的优先级。
可能有如下程序:
#include <stdio.h>
void main(void)
{
int i, j;
i = 1;
j = 101;
printf("i = %d, and j = %d\n", i, j);
printf("i++ = %d, and j++ = %d\n", i++, j++);
printf("++i = %d, and ++j = %d\n", ++i, ++j);
printf("i+1 = %d, and j+1 = %d\n", i+1, j+1);
printf("i+++j = %d\n", i+++j);
printf("++i+++j++= %d\n", (++i)+++(j++));
printf("i = %d, and j = %d\n", i, j); //注意i,j的值,分析i+++j 的执行过程。
printf("i-- = %d, and j-- = %d\n", i--, j--);
printf("--i = %d, and --j = %d\n", --i, --j);
printf("i-1 = %d, and j-1 = %d\n", i-1, j-1);
printf("i---j = %d\n", i---j);
printf("--i---j--= %d\n", (--i)---(j--));
}
3、输入并运行下面的程序
#include <stdio.h>
main()
{
int a,b;
unsigned c,d;
long e,f;
a=100;
b=-100;
e=50000;
f=32767;
c=a;d=b;
printf("%d%d\n",a,b);
printf("%u%u\n",a,b);
printf("%u%u\n",c,d);
c=a=e;
d=b=f;
printf("%d%d\n",a,b);
printf("%u%u\n",c,d);
}
请对照程序和运行结果分析:
(1)将一个负整数赋给一个无符号的变量,会得到什么结果。
(2)将一个长整数赋予无符号变量,会得到什么结果(分别考虑大于或等于65535以及小于65535的情况)。
(3)将一个大于32767的长整数赋给整型变量,会得到什么结果。
4、编写程序:
输入一个四位正整数,将它们倒排,例如输入1234,输出4321。
(提示:分别应用/ 求整数部分, %求余数部分。
例如7/5=1,7%5=2)
5、输入下面程序:
#include<stdio.h>
void main( )
{
int i,j,m,n ;
i=8 ;
j=10 ;
m=++i ;
n=j++;
printf("%d,%d,%d,%d",i,j,m,n);
}
(1)运行程序,注意 i,j,m,n各变量的值,分别作以下改动并运行。
(2)将第3 行中 m, n 的值改为:m=i++; n=++j; 再运行。
(3)将程序改为:
#include <stdio.h>
void main( )
{ int i, j;
i=8; j=10;
printf(“ %d,%d” , i++, j++);
}
运行并分析结果。
(4)在(3)的基础上,将 printf语句改为:
printf(“ %d,%d” , ++i, ++j); 运行并分析结果。
(5)再将printf 语句改为:
printf(“ %d,%d,%d,%d” , i, j, i++, j++); 运行并分析结果。
(6)将程序改为:
#include <stdio.h>
void main( )
{
int i,j,m=0,n=0 ;
j=10 ;
i=8 ;
m+=i++;
n-=--j ;
printf("i=%d, j=%d, m=%d, n=%d",i,j,m,n);
}
运行并分析结果。
[实验结果]
要求:请同学把调试好的程序、遇到的错误、解决错误的方法写在下面(不够可以附页)。