实验三程序的选择结构

合集下载

实验3 结构化程序设计初步

实验3  结构化程序设计初步

实验3 结构化程序设计初步1.实验目的(1)掌握C++赋值语句与输入输出语句的使用方法,区别C语言的输入输出语句(2)掌握关系运算符、逻辑运算符与条件运算符的运算规则并能熟练计算由这些运算符构成的表达式(3)深入掌握C++各种流程控制语句(选择语句、循环语句和跳转语句)的要点和使用方法(4)能够灵活地运用C++各种语句进行综合程序设计2.实验内容2.1程序分析题。

分析下面程序的运行结果,上机运行程序,观察其输出结果与你的分析结果是否相同?(1)有如下程序,从键盘输入123456.78↙后,变量c1、c2、a、b的值分别是多少?#include <iostream.h>void main( ){char c1,c2;int a;float b;cin>>c1>>c2>>a>>b;cout<<c1<<" "<<c2<<" "<<a<<" "<<b<<'\n';}(2)#include <iostream.h>#include <iomanip.h>void main( ){double a=123.456789012345;cout<<a<<endl;cout<<setprecision(9)<<a<<endl;cout<<setprecision(6)<<a<<endl;cout<<setiosflags(ios::fixed)<<a<<endl;cout<<setiosflags(ios::fixed)<<setprecision(8)<<a<<endl;}(3)#include <iostream.h>#include <iomanip.h>void main( ){double a=123.456789012345;cout<<setiosflags(ios::scientific)<<a<<endl;cout<<setiosflags(ios::scientific)<<setprecision(4)<<a<<endl;}#include <iomanip.h>void main( ){int b=123456;cout<<b<<endl;cout<<hex<<b<<endl;cout<<setiosflags(ios::uppercase)<<b<<endl;cout<<dec<<setw(10)<<b<<','<<b<<endl;cout<<setfill('*')<<setw(10)<<b<<endl;cout<<setiosflags(ios::showpos)<<b<<endl;}(5)有如下程序,从键盘输入86 24 75↙后,程序的输出结果为多少,为什么?#include <iostream.h>void main( ){int a,b,c;cin>>a>>oct>>b>>hex>>c;cout<<a<<" "<<b<<" "<<c<<endl;}(6)#include <iostream.h>#include <iomanip.h>void main( ){short a=-1;cout<<dec<<a<<" "<<oct<<a<<" "<<hex<<a<<endl;}(7)#include <stdio.h>void main( ){int a=-1;printf("dec:%d,oct:%o,hex:%x,unsigned:%u\n",a,a,a,a);}(8)以下程序中,为了给整型变量k1,k3赋值为10,给k2,k4赋值为20,如何输入数据?#include <stdio.h>void main( ){int k1,k2,k3,k4;scanf("%d%d",&k1,&k2);scanf("%d,%d",&k3,&k4);printf("k1=%d,k2=%d,k3=%d,k4=%d\n",k1,k2,k3,k4);}void main( ){int a=3,b=4,c=5,d=6,e,f;e=a>b&&(c=8);cout<<c<<" "<<e<<endl;f=a<b&&(e=c<d);cout<<e<<" "<<f<<endl;f=a<b||(d>0?d++:d--);cout<<d<<" "<<f<<endl;}(10)#include <iostream.h>void main( ){int x,y,z,w;z=(x=-1)?(y=-1,y+=x+5):(x=7,y=9);w=y*'a'/4;cout<<x<<" "<<y<<" "<<z<<" "<<w<<endl;}(11)#include <iostream.h>void main( ){int a=5,b=7,c=3,t;if(a= -1) cout<<"Yes"<<endl;else cout<<"No"<<endl;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; }cout<<a<<" "<<b<<" "<<c<<endl;}解析:a被赋值为-1,输出YESIf语句成立则执行,不成立则不执行分析只有b>c成立,=后面的值赋给左边的,顺序从左到右(12)#include <iostream.h>void main( ){ char c='3';switch(c-'1'){case 0:case 1:cout<<c+1<<endl;case 2:cout<<c+2<<" "<<char(c+2)<<endl;default:cout<<c+3<<" "<<char(c+3)<<endl;}}‘3’是字符型,ASCLL码为051,执行Switch时,根据switch表达式的值找到与之匹配的case子句,就从此子句开始执行下去,不再进行判断(13)#include <iostream.h>void main( ){int a=2,b=7,c=5;switch(a>0){case 1:switch(b<0){case 1: cout<<"+";break;case 2: cout<<"-";break;}case 0:switch(c==5){case 0: cout<<"*";break;case 1: cout<<"/";break;default: cout<<"#";break;}default: cout<<"$";}cout<<"\n";}a>0是真,值为1,执行case1,继续下面,b<0是假,不执行其中的case1.case2c==5是真,值为1,执行case1,输出/,其后有break,被中断不再执行分句里其下的命令,default: cout<<"$"前面没有break,则输出$(14)#include <iostream.h>void main( ){int a=10,b=0;do{a+=2;b+=a;cout<<"a="<<a<<",b="<<b<<endl;if(b>20) break;}while(a!=14);}(15)#include <iostream.h>void main( ){int i,j;for(i=10;i<20;i++){for(j=2;j<=i/2;j++)if(i%j==0) break;if(j>i/2)cout<<i<<" ";}cout<<endl;}(16)#include <iostream.h>void main( ){int i,j,m=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(j>=i) m++;cout<<m<<endl;}(17)#include <iostream.h>void main( ){int i,j;for(i=1;i<=9;i++){for(j=1;j<=9;j++){ if(j>i) break;cout<<i<<"*"<<j<<"="<<i*j<<" ";}cout<<endl;}}(18)#include <iostream.h>void main( ){int i=1,sum=0;while(i<=100){if(i%2==0){ i++; continue;}sum+=i;i++;}cout<<sum<<endl;}2.2编程题(1)编写程序从键盘输入一个大写字母,将其转换为小写字母并输出。

C语言程序设计实验三答案

C语言程序设计实验三答案

实验三 选择结构程序设计一、实验目的与要求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位小数)。

计算机软件基础实验报告

计算机软件基础实验报告

课程名称:计算机软件基础实验项目:1.最简单的C程序2.C程序的选择结构3.C程序的循环结构4.C程序的函数5.C程序的指针6.数据结构初步实验一、最简单的C程序一、实验目的(1)理解常用运算符的意义。

(2)掌握c 语言表达是的运算规则。

二、实际设备及器材计算机三、实验内容(1)整数除的危险性分析三个表达式的值,再设计程序测试,进行比较和分析。

int a=5,b=7,c=100,d,e,f;d=a/b*c;e=a*c/b;f=c/b*a;d=0,e=71,f=70.程序测试:#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,%d\n",d,e,f);}结果:(1)分析下面程序是比较x++与++x之间的区别。

例如:#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\ny",b);}运行结果:由上述程序可以看出,x++是先使用x在使x+1,而++x是先使x+1在使用x。

(2)分析下列表达式的值测试程序:#include<stdio.h>int main(){int a,b,c,d,e,f;scanf("a=%d,b=%d\n",a,b);c=b+a+++a;d=b+(a++)+a;e=b+a+(++a);f=b+a+++a++;printf("c=%,d=%d,e=%d,f=%d\n",c,d,e,f);}四、思考题1.整数除的危险性2.C语言的运算规则实验二、C语言选择结构一、实验目的(1)掌握分支程序的基本结构。

实验三选择结构程序设计

实验三选择结构程序设计

实验三选择结构程序设计程序设计是计算机科学中的核心技能之一,它涉及到使用编程语言来解决特定问题。

在程序设计中,选择结构是基本的控制流程之一,它允许程序根据不同的条件执行不同的代码块。

本实验旨在通过一系列练习,帮助学生理解和掌握选择结构程序设计的基本方法和技巧。

实验目的1. 理解选择结构在程序设计中的作用和重要性。

2. 掌握基本的选择结构语句,如`if`、`switch`等。

3. 学会使用选择结构解决实际问题。

4. 提高逻辑思维能力和编程实践能力。

实验环境- 编程软件:任意一种支持C/C++/Java等语言的IDE。

- 开发环境:Windows/Linux/MacOS均可。

实验内容1. 基础选择结构- 实验一:使用`if`语句实现一个简单的温度转换程序,将摄氏度转换为华氏度。

```c#include <stdio.h>int main() {float celsius, fahrenheit;printf("请输入摄氏度:");scanf("%f", &celsius);fahrenheit = (celsius * 9 / 5) + 32;printf("%.2f摄氏度等于%.2f华氏度\n", celsius, fahrenheit);return 0;}```- 实验二:使用`if...else`语句设计一个程序,根据输入的分数判断成绩等级。

```c#include <stdio.h>int main() {int score;printf("请输入成绩:");scanf("%d", &score);if (score >= 90) {printf("优秀\n");} else if (score >= 60) {printf("及格\n");} else {printf("不及格\n");}return 0;}```2. 多条件选择结构- 实验三:使用`switch`语句实现一个简单的菜单选择程序。

长沙理工大学C语言实验报告(2015)

长沙理工大学C语言实验报告(2015)
3.改错题 改正下列程序中的错误,输入一个数 n(不一定是整数),判定 n 是小于 0,等于 0,还是大于 0。 (源程序附后面)
8
输入输出示例 第一次运行 Enter n:10 10 is greater than 0 第二次运行 Enter n:-5 -5 is less than 0 第三次运行 Enter n:0 0 is equal to 0
改正下列程序中的错误。(源程序附后面)
韩信点兵。韩信有一队兵,他想知道有多少人,便让土兵排队报数。按从 1 至 5 报数,最
末一个土兵报的数为 1;按从 1 至 6 报数,最末一个土兵报的数为 5;按从 1 至 7 报数,最末一
个土兵报的数为 4;最后按从 1 至 11 报数,最末一个土兵报的数为 10;你知道韩信有多少土兵
fx=0; else
fx=1.0/(2*a)*log(fabs((double)(a+x)/(a-x)));
7
printf("a=%d,f(x)=%.2f\n",a,fx); }
(2)输入 a、b、c 三个整数,输出最大数。 #include<stdio.h> main() {
int a,b,c,max; printf("Enter a,b,c:"); scanf("%d%d%d",&a,&b,&c); if(a>b)
二、上机内容:
1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black
2.改错题(将正确程序写在指定位置) 改正下列程序中的错误,在屏幕上显示商品价格表(源程序附后面)。

实验三-选择结构程序设计

实验三-选择结构程序设计

实验三选择结构程序设计3.1实验要求与目的1.掌握关系表达式和逻辑表达式的正确应用2.条件表达式的正确应用3. 掌握if语句,if-else语句,if语句的嵌套的编程方法4. 掌握switch的编程方法及执行特点5.掌握相关的算法(大小写字母的转换,判断数的奇偶,整数的整除,分段函数的求解,成绩的转换等)6. 培养解决实际问题的能力3.2实验指导结构化程序设计的三大结构:顺序结构、选择结构和循环结构。

计算机在执行过程时,根据条件选择所要执行的语句,称为选择结构,也称为分支结构。

在解决实际问题时,可能会因为其种条件的约束产生分支,可能是单分支结构、双分支结构和多分支结构等。

因此可选择相应的语句进行程序设计。

C语言程序设计实现单分支结构常采用,if语句;实现双分支结构常采用:if-else语句;实现多分支结构常采用:if-else嵌套语句或switch语句。

选择结构的程序设计除了选择适当的语句外,另一关键问题是条件的正确表示。

条件可以用表达式来描述,如关系表达式、逻辑表达式等。

【3.1】录入下列程序,输入给定的测试数据,观察其程序执行结果。

程序文件名为:ex3_1.c。

输入测试数据:23 56程序运行结果:max=56#include<stdio.h>void main(){int a,b,max;scanf("%d%d",&a,&b); /*从键盘输入两整数*/max=a;if(max<b)max=b;printf("max=%d\n",max); /*输出最大数*/}该程序的执行过程,从键盘输入两个整数赋予a,b,把a的值先赋予变量max,采用if 语句判别max和b的大小,若max小于b,则把b的值赋予max,然后执行printf语句输出max的值;若max大于b,不执行if后的语句,而执行printf语句输出max的值;max中的值总是大数。

实验3 选择结构程序设计

实验3 选择结构程序设计

实验3 选择结构程序设计一、实验目的1.【重点】掌握算法描述方法(重点掌握传统流程图)、准备测试数据以及实际调试程序的独立编程能力。

2.【重点】掌握C语言的基本控制结构和基本控制语句的使用方法。

3.【重点】掌握用C语言的基本控制语句进行选择结构程序设计的方法。

二、实验内容1.算算账成都出租车2010年9月10日执行新价格,捷达车运价将调整为8元起步,速腾9元起步,两2.身高预测每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后的身高的因素包括遗传、饮食习惯与体育锻炼等。

小孩成人后的身高与其父母的身高和自身的性别密切相关。

设faHeight为其父身高,moHeight为其母身高,身高预测公式为男性成人时身高=(faHeight + moHeight)×0.54cm女性成人时身高=(faHeight×0.923 + moHeight)/2cm此外,如果喜爱体育锻炼,那么可增加身高2%;如果有良好的卫生饮食习惯,那么可增加身高1.5%。

编写程序LAB3_2.c:从键盘输入用户的性别(用字符型变量sex存储,输入字符F表示女性,输入字符M表示男性)、父母身高(用实型变量存储,faHeight为其父身高,moHeight为其母身高)、是否喜爱体育锻炼(用字符型变量sports存储,输入字符Y表示喜爱,输入字符N表示不喜爱)、是否有良好的饮食习惯等条件(用字符型变量diet存储,输入字符Y表示良好,输入字符N表示不好),利用给定公式和身高预测方法对身高进行预测。

【要求】程序要有较好的错误处理能力。

例如,当输入父亲或母亲身高小于0时,屏幕应有如下提示:当输入字符为其他字母时,屏幕也应有相应提示。

例如:所有输入都符合要求的输出界面如下图所示:实验报告《C语言程序设计》实验三班级学号姓名一、实验目的1.【重点】掌握算法描述方法(重点掌握传统流程图)、准备测试数据以及实际调试程序的独立编程能力。

MATLAB教程课后实验报告题目及解答[第一至第五章]

MATLAB教程课后实验报告题目及解答[第一至第五章]

MATLAB教程实验报告实验项目名称实验一 Matlab基本操作学生姓名汪德旺专业班级 09数教(1)班学号 0301090131实验成绩日期一. 实验目的和要求1、了解MATLAB 的开发环境。

2、熟悉Matlab的基本操作。

3、掌握建立矩阵的方法。

4、掌握MATLAB各种表达式的书写规则以及常用函数的使用。

5、填写实验报告,实验报告文件取名为report1.doc。

6、于邮件附件形式将实验报告文件report1.doc 发到邮箱*******************,邮件主题为班级学号姓名,如:09数教1班15号张三。

二、实验内容1、先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。

(1)0 122sin851ze =+(2)2212 1ln(0.4552i z x x+⎡⎤==⎢⎥-⎣⎦其中(3)0.30.330.3sin(0.3)ln,22a ae e az a--+=++a=-3.0,-2.9,-2.8,…, 2.8, 2.9,3.0(4)2242,011,12,0:0.5:2.521,23t tz t tt t t⎧≤<⎪=-≤<=⎨⎪-+≤<⎩其中t2.已知:1234413134787,2033657327 A B--⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦求下列表达式的值:(1)A+6*B和A-B+I(其中I为单位矩阵) (2)A*B和A.*B(3)A^3和A.^3(4)A/B和B\A(5)[A,B]和[A([1,3],:);B^2]3、设有矩阵A 和B123453016678910A=,B=17-691112131415023-41617181920970212223242541311⎡⎤⎢⎥⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎢⎥⎢⎥⎣⎦(1)求它们的乘积C 。

(2)将矩阵C 的右下角3*2子矩阵赋给D 。

(3)查看MATLAB 工作空间的使用情况。

MATLAB程序设计及应用(第二版)课后实验答案

MATLAB程序设计及应用(第二版)课后实验答案

MATLAB程序设计及应⽤(第⼆版)课后实验答案Matlab 课后实验题答案实验⼀ MATLAB 运算基础1. 先求下列表达式的值,然后显⽰MATLAB ⼯作空间的使⽤情况并保存全部变量。

(1) 0122sin851z e=+ (2) 221ln(1)2z x x =++,其中2120.455i x +??=??-?? (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e az a a --+=++=-- (4) 2242011122123t t z t t t t t ?≤,其中t =0:0.5:2.5 解:M ⽂件:z1=2*sin(85*pi/180)/(1+exp(2))x=[2 1+2*i;-.45 5];z2=1/2*log(x+sqrt(1+x^2)) a=-3.0:0.1:3.0;z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2) t=0:0.5:2.5;z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3) .*(t.^2-2*t+1)2. 已知:1234413134787,2033657327A B --==-求下列表达式的值:(1) A+6*B 和A-B+I (其中I 为单位矩阵) (2) A*B 和A.*B (3) A^3和A.^3 (4) A/B 及B\A(5) [A,B]和[A([1,3],:);B^2] 解:M ⽂件:A=[12 34 -4;34 7 87;3 65 7];B=[1 3 -1;2 0 3;3 -2 7]; A+6.*BA-B+eye(3) A*B A.*B A^3 A.^3 A/B B\A [A,B][A([1,3],:);B^2]3. 设有矩阵A 和B1234166789101769,111213141502341617181920970212223242541311A B-???==-???(1) 求它们的乘积C 。

实验三-选择结构程序设计

实验三-选择结构程序设计

实验三-选择结构程序设计实验目的:通过编写选择结构程序,掌握选择结构的使用方法和程序设计思路。

实验材料:计算机,编程软件(如C++、Python等),实验指导书。

实验一:利用选择结构判断某数的正负实验步骤:步骤一:打开编程软件,创建一个新的程序文件。

步骤二:定义一个整型变量num,用于存储输入的数字。

步骤三:使用输入函数,要求用户输入一个数字,并将其赋值给num。

步骤四:使用选择结构,判断num的正负情况。

如果num大于0,则输出"该数为正数"。

如果num小于0,则输出"该数为负数"。

如果num等于0,则输出"该数为零"。

步骤五:保存程序文件,运行程序。

步骤六:测试程序功能,输入不同的数字进行测试,并查看输出结果是否符合预期。

实验结果:经过多次测试,该程序能够正确判断输入数字的正负情况,并输出相应结果。

实验二:利用选择结构判断某年是否是闰年实验步骤:步骤一:打开编程软件,创建一个新的程序文件。

步骤二:定义一个整型变量year,用于存储输入的年份。

步骤三:使用输入函数,要求用户输入一个年份,并将其赋值给year。

步骤四:使用选择结构,判断year是否是闰年。

如果year能够整除4且不能整除100,或者能够整除400,则输出"该年是闰年"。

否则输出"该年不是闰年"。

步骤五:保存程序文件,运行程序。

步骤六:测试程序功能,输入不同的年份进行测试,并查看输出结果是否符合预期。

实验结果:经过多次测试,该程序能够正确判断输入年份是否是闰年,并输出相应结果。

实验三:利用选择结构计算学生成绩等级实验步骤:步骤一:打开编程软件,创建一个新的程序文件。

步骤二:定义一个浮点型变量score,用于存储输入的学生成绩。

步骤三:使用输入函数,要求用户输入一个学生成绩,并将其赋值给score。

步骤四:使用选择结构,根据score的值计算学生的等级。

C程序设计实验(3)-选择结构程序设计

C程序设计实验(3)-选择结构程序设计

实验三 选择结构程序设计一:目的要求1.熟悉用关系运行与逻辑运行符的应用;2.掌握if 语句与switch 语句的使用;3.上机前按实验要求预习编写出完整的程序,才允许上机。

二:实验内容与步骤1、从键盘输入一个年份,判断其是不是闰年;2、从键盘输入a 、b 、c 三个数,并求出方程02=++c bx ax 的解,要求考虑有两个不等实根、两个相等实根、两个虚根的情况,要根据a 、b 、c 的不同值,给出不同结果的提示。

1.#include <stdio.h>int main(){int year,leap;printf("enter year:"); scanf("%d",&year);if (year%4==0)if(year%100==0)if(year%400==0) leap=1;else leap=0;else leap=1;else leap=0;if (leap) printf("%d is ",year);else printf("%d is not ",year);printf("a leap year.\n");return 0;}2#include <stdio.h>#include <math.h>int main(){double a,b,c,disc,x1,x2,realpart, imagpart;scanf("%lf,%lf,%lf",&a,&b,&c);printf("The equation ");if(fabs(a)<=1e-6)printf("is not a quadratic\n");else{disc=b*b-4*a*c;if(fabs(disc)<=1e-6)printf("has two equal roots:%8.4f\n", -b/(2*a));elseif(disc>1e-6){x1=(-b+sqrt(disc))/(2*a);x2=(-b-sqrt(disc))/(2*a);printf("has distinct real roots:%8.4fand %8.4f\n",x1,x2);}else{ realpart=-b/(2*a);imagpart=sqrt(-disc)/(2*a);printf(" has complex roots:\n");printf("%8.4f+%8.4fi\n”,realpart,imagpart);printf("%8.4f-%8.4fi\”, realpart,imagpart);}}return 0;}。

C语言实验报告3

C语言实验报告3

实验三:选择结构程序设计一、实验方式:一人一机二、实验目的:1、掌握多分支语句的一般形式和使用方法。

2、掌握单分支if语句的使用方法。

3、掌握双分支if-else语句的使用方法。

4、掌握switch语句的一般形式和使用方法。

5、利用switch语句与break语句相结合解决生活中的问题。

6、学习调试和修改选择结构的程序。

三、实验内容:说明:前四题为必做题目,后两题为选做题目。

1、编写程序,判断箱子是否为正方体。

2、有一数学分段函数: x2 (x<-11)y= 2|x|-1 (-5≤x≤5)3x-11 (x≥10) 编写程序,输入x值,输出y值。

3、编写程序,对于给定的学生百分制成绩,分别输出等级‘A’,‘B’,‘C’,‘D’,‘E’,其中90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。

(要求分别使用switch和if 语句实现)4、编写程序,从键盘上输入一个字符,如果该字符是小写字母,则转换成大写字母输出;如果是大写字母,则转换成小写字母输出;如果是其他字符,原样输出。

5、编写程序,从键盘上输入某一年月,判断这年的这个月份有多少天。

四、实验答案:(代码+运行结果截屏或者代码)1、实验代码(1)#include <stdio.h>void main(){ int l,w,h;printf("please enter three numbers: \n");scanf("%d,%d,%d",&l,&w,&h);if(l==w&&w==h)printf("该箱子是正方体。

\n");elseprintf("该箱子是长方体。

\n");}(2)#include "stdio.h"#include "math.h"void main(){float x,y;scanf("%f",&x);if(x<-11) y=pow(x,2);else if(x>=-5&&x<=5) y=2*fabs(x)-1;else if(x>=10) y=3*x-11;printf("y=%5.2f\n",y);}(3)第一种:使用switch实现#include "stdio.h"void main(){float score;char ch;scanf("%f",&score);switch((int) (score/10) ){case 10:case 9:ch='A';break;case 8:ch='B';break;case 7:ch='C';break;case 6:ch='D';break;default:ch='E';break;}printf("%f分等级是%c \n",score,ch);}第二种:使用if多分支实现#include "stdio.h"void main(){float score;char ch;scanf("%f",&score);if(score>100||score<0) printf("Error Data!\n");else if(score<=100&&score>=90) ch='A';else if(score>=80&&score<90) ch='B';else if(score>=70&&score<80) ch='C';else if(score>=60&&score<70) ch='D';else ch='E';printf("%f分等级是%c \n",score,ch);}(4)#include "stdio.h"void main(){char ch;scanf("%c",&ch);if(ch>='a'&&ch<='z') ch=ch-32;else if(ch>='A'&&ch<='Z') ch=ch+32;else ch=ch;printf("转换后的字符为:%c \n",ch);}(5)#include <stdio.h>void main(){int year,month,days;printf("please enter year and month: ");scanf("%d%d",&year,&month);if(month<=0||month>=13) printf(" you make a mistake\n");elseswitch(month){case 2: if(year%4==0&&year%100!=0||year%400==0)days=29;elsedays=28;break;case 1:case 3:case 5:case 7:case 8:case 10:case 12: days=31;break;case 4:case 6:case 9:case 11: days=30;break;}printf("%d年%d月有%d日\n",year,month,days);}2、实验结果(1)(2)(3)使用switch实现和if多分支实现:(4)(5)3、实验分析。

【C语言基础精品】实验三选择结构程序设计

【C语言基础精品】实验三选择结构程序设计

班级:学号:姓名:成绩:实验三选择结构程序设计【实验目的】1.正确书写关系表达式。

2.掌握if语句的各种格式以及嵌套使用。

3.掌握switch语句的使用。

4.能正确调用c语言提供的数学库函数。

【实验内容】一、改错题1.输入三角形的三条边a,b,c,如果能构成一个三角形,输出面积area和周长perimeter。

#include<iostream.h>Void main(){int a,b,c,area, perimeter;printf(”Enter 3sides of triangle:\n”);scanf(“%d%d%d”,&a,&b,&c);if(a+b>c||a+c>b||c+b>a){s=1/2(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c);perimeter=a+b+c;printf(“area=%d\tperimeter=%d\n”area,perimteer);elseprintf(”These sides do not correspond to a valid triangle.\n”);}运行结果1:Enter 3 sides of the triangle:5 5 3Area=7.15454 perimeter=13运行结果2:Enter 3 sides of the triangle:1 4 1These sides do not correspond to a valid triangle.二、程序填空题输入a,b,c三个数,求解方程ax2+bx+c=0。

#include<stdio.h>#include<math.h>Void main(){double a,b,c,delta,x1,x2,p,q;scanf(“%lf%lf%lf”,&a,&b,&c);if(a==0){If( ______________)printf(”只有一个根x=\n”,-c/b);else if(____________)printf(”方程的解是全体实数.\n”);else printf(”方程无解.\n”);}else__________________;if(_________________){printf(”有两个不同的实根:\n”);x1=(-b+sqrt(delta))/(2*a);x1=(-b-sqrt(delta))/(2*a);printf(“x1=%f\nx2=%f\n”,x1,x2);}else if(_____________){printf(”有两个相同的实根:”);printf(”x1,x2=%f\n”, -b/(2*a))}else{p=-b/(2*a);q=(-delta)*(2*a)printf(”有两个不同的虚根:”);printf(“x1=%f+%fi\n”,p,q);printf(“,x2=%f-%fi\n”,p,q”);}}}运行结果1:0 0 0方程的解是全体实数.运行结果2:0 0 2方程无解.运行结果3:0 2 3只有一个根x=-1.5运行结果4:1 2 1有两个相同的实根.x1=x2=-1运行结果5:1 5 6有两个不同的实根.运行结果6:1 -2 5有两个不同的虚根:X1=1=2i,x2=1-2i三、编程题(1)输入一个整数,判断它的奇偶性后输出。

C语言程序设计实验实验指导书及答案

C语言程序设计实验实验指导书及答案

实验一熟悉C程序运行环境班级学号姓名成绩一、实验目的1. 熟悉C语言Visual C++调试环境;2. 掌握C程序的编辑、调试及运行;二、实验内容项目1. 调试并运行下面程序,并写出运行结果:include <>int main{printf“Good morning\n”;printf“Hello,world\n”;return 0;}运行结果注意,按照屏幕输出格式写:项目2. 调试并运行下面程序,并写出运行结果:include <>int main{int a , b , sum; /定义变量/a=23; b=56; /为变量赋值/sum=a+b; /计算两个变量的和/printf“sum is %d\n”,sum; /输出计算结果/return 0;}运行结果:项目3. 调试并运行下面程序,并写出运行结果:include <>int maxint,int;int main{int a , b , c; /定义变量/a=23; b=56; /为变量赋值/c=maxa,b; /调用max函数,将得到的值赋给c/ printf“max is %d\n”,c; /输出c的值/return 0;}int maxint x,int y /定义max函数,函数值为整型/ {int z; /定义变量/ifx>yz=x;elsez=y;returnz; /将z的值返回/}运行结果:三、提高部分1.试想,如果求10个数中的最大者,则程序该如何编写;程序代码运行结果:实验二数据及其运算班级学号姓名成绩一、实验目的1. 掌握C数据类型的概念、熟悉整型、字符型和实型基本类型的常量的用法;学会三种基本类型变量的定义、赋值和使用方法;2. 掌握算术表达式、关系表达式及逻辑表达式的特点及用法;3. 熟悉运算符的优先级和结合性的概念;4. 学习简单程序的编写方法;二、实验内容项目1. 编辑运行下面程序,并分析运行结果;include<>int main{int m,a,b,c,d,e; /定义整型变量/printf“please input a data:m=”;scanf“%d”,&m;/从键盘输入一个整数/a=m+1;b=m-2;c=m3;d=m/4;e=m%5;printf“a=m+1;a=%d\n”,a;printf“b=m-2;b=%d\n”,b;printf“c=m3;c=%d\n”,c;printf“d=m/4;d=%d\n”,d;printf“e=m%%5;e=%d\n”,e;return 0;}运行结果:项目2. 编辑运行下面程序,并分析运行结果;include<>int main{float m,n,s;printf“m=”;scanf“%f”,&m;/输入矩形的边长/printf“n=”;scanf“%f”,&n;/输入矩形的边长/s=mn; /计算矩形的面积/printfs=%f\n”,s;/输出矩形的面积/return 0;}1输入24和5,运行结果:2输入-24和5,运行结果:分析结果是否正确3对上面程序进行修改,当输入一个非法的边长负数或零,会给出提示而不计算矩形的面积;输入-24和5,运行结果:项目3. 先阅读程序,并写出结果,再运行程序并分析结果;include<>int main{int i,j,m,n,p,q,x,y;i=8;j=10;p=0;q=0;x=1;y=1;m=++i;选做根据矩形面积的计算方法,编写一个输入圆半径r,计算园周长L和圆面积S的程序;注意判断圆半径r是否大于零;程序代码和运行结果可写在指导书背面实验三程序控制结构选择班级学号姓名成绩项目1.三角形成立条件判断及面积计算项目任务输入三个整型数据,判断这三个整型数据能否围成三角形,如果能组成三角形,计算并输出它的面积,如果不能围成三角形输出“三条边不能围成三角形”;项目说明C语言实现选择结构筑要用if语句,按照判断所给定的条件是否满足,根据判定结果的真或假来决定执行在if语句中给出的两种操作之一;项目目的1正确使用关系表达式和逻辑表达式表达条件;2学习分支语句if的使用方法;3进一步熟悉VC集成环境的使用方法,学习VC环境提供的调试工具;项目要点1已知三边求三角形面积的公式:p=a+b+c/2 s= sqrtpp-a p-b p-c2已知三边能围成三角形的条件是:任意两边之和大于第三边;3C语言中求平方根的函数是sqrtdouble x,该函数在头文件中;4if语句中“表达式”必须用“”和“”括起来,它的值为逻辑值;除常见的关系表达式或逻辑表达式外,也允许是其他类型的数据,如整型、实型、字符型等;5else子句可选是if语句的一部分,必须与if配对使用,不能单独使用;程序代码:运行结果:项目2. 百分制成绩转换为成绩等级项目任务输入一个百分制成绩,输出对应的等级;项目目的1正确使用关系表达式和逻辑表达式表达条件;2学习多switch分支选择语句的使用方法;项目要点解决本项目的关键是如何将输入的百分制成绩与case 常量联系起来,不难想到将百分制成绩用score 表示除以10之后再取整,一定得到0到10之间的数;9、10对应’a ’,8对应‘b ‘,……,5、4、3、2、1、0对应’e ’既不及格; 程序代码:运行结果:项目3.选做⎝⎛<--=>+=0100012x x x x x y ;程序代码和运行结果可写在指导书背面实验四程序控制结构循环班级学号姓名成绩项目1:使用循环结构实现重复处理项目说明从键盘输入一个班的成绩,把百分制转换成等级制;将百分制成绩用score表示除以10之后再取整,一定得到0到10之间的数;9、10对应’a’,8对应‘b‘,……,5、4、3、2、1、0对应’e’既不及格;要求分别使用三种循环结构实现;该项目中,假设班级人数不固定,规定输入若干0至100的成绩,如果成绩不在此范围,则表示结束;该项目中,同时要使用switch语句实现多分支选择结构;项目目的1掌握用while语句和do…while语句实现循环的方法;2掌握用for语句实现循环的方法;3掌握三种语句的特点和应用技巧;4掌握用break语句和continue语句改变循环状态的方法;项目内容1、用while语句实现的程序代码:2、用do…while和break语句实现的程序代码:3、用do…while和continue语句实现的程序代码:4、用for语句实现的程序代码:项目2.选做求101!nn =∑即求1!2!3!10!++++程序代码和运行结果可写在指导书背面实验五数组班级学号姓名成绩项目1.冒泡排序法项目说明输入10个数,用“冒泡法”对10个数排序由小到大;冒泡法的基本思想:通过相邻两个数之间的比较和交换,使数值较小的数逐渐从底部移向顶部,较大的数逐渐从顶部移向底部;就像水底的气泡一样逐渐向上冒,故而得名;项目目的1掌握冒泡排序算法的编程;2掌握与数组有关的算法;程序代码:运行结果:项目2.字符统计项目说明有一篇文章,共有3行文字,每行80个字符;要求分别统计出其中英文字母和数字的个数;项目目的1掌握键盘输入字符串方法;2掌握二维数组的处理方法;技术要点13行文字可定义一个二维字符数组来表示;2使用gets 函数对字符串进行输入;程序代码:include <>int main{int i,j,upp,low,dig,spa,oth;char text380;upp=low=dig=spa=oth=0;for i=0;i<3;i++{ printf"please input line %d:\n",i+1;getstexti;for j=0;j<80 && textij='\0';j++{if textij>='A'&& textij<='Z'upp++;else if textij>='a' && textij<='z'low++;else if textij>='0' && textij<='9'dig++;else if textij==' 'spa++;elseoth++;}}printf"\nupper case: %d\n",upp;printf"lower case: %d\n",low;printf"digit : %d\n",dig;printf"space : %d\n",spa;printf"other : %d\n",oth;return 0;}运行结果:项目3.选做在二维数组中,若某一位置上的元素在该行中最大,而在该列中最小,则该元素即为该二维数组的一个鞍点;要求从键盘上输入一个二维数组,当鞍点存在时,把鞍点找出来; 程序代码和运行结果可写在指导书背面实验六函数班级学号姓名成绩项目1:使用函数实现对二维数组转置;项目说明写一个函数,使给定的33的二维整型数组转置,即行列互换;要求输出转换之前和转换之后的结果; 项目目的1掌握函数的定义和调用;2掌握二维数组名作为函数的参数的使用技巧;技术要点1使用二重循环对二维数组进行输入,处理和输出;2二维数组名作为函数的参数,定义函数需要给出第二维的大小;程序代码:运行结果:项目2:使用函数实现成绩处理项目说明输入3个学生4门课的成绩,分别用函数实现以下功能:1计算每个学生的平均分;2计算每门课的平均分;3找出12个分数中最高分数所对应的学生和课程;项目目的1掌握函数的定义和调用;2掌握全局变量的使用;技术要点学生成绩可定义成全局的二维数组,这样自定义函数可以直接使用,而不需要进行参数的传递; 程序代码:运行结果:项目3.选做求101!nn =∑即求1!2!3!10!++++阶乘要求使用递归函数来实现,程序代码和运行结果可写在指导书背面实验七指针班级学号姓名成绩项目1.使用指针参数交换两个变量值项目说明用函数实现两个变量值的交换,使其在主调函数和被调函数中的值一致,并且返回这两个变量的和以及乘积;要求用指针变量作为函数参数;项目目的1熟悉如何定义指针变量,掌握将指针变量作为函数参数的方法;2掌握通过指针参数由被调函数向主调函数传递多个值的方法;技术要点由于变量的值始终存放在内存单元中,因此,要交换两个变量的值,只需交换这两个变量对应的存储单元的值即可,这就需要知道两个变量的地址;也就是说,需要保证主调函数与被调函数中所要交换的两个数的内存单元是同一内存单元,即传递的参数是内存单元的地址,而不是内存单元中的值;程序代码:运行结果:项目2. 数组的排序和的插入项目目的1熟悉如何定义指针变量,掌握将指针变量指向一维数组元素的方法;2掌握如何对数组进行排序;3掌握如何在一个有序的数列中查找合适的位置;4掌握如何将一个数插入到一个有序数列中;技术要点1排序可采用冒泡法或者选择法;2有序数组中插入一个数的关键是找到该数据插入的位置,然后将插入位置及其后的所有元素均后移一位,在空出的位置放入待插入的数据;例如,在13、27、38、49、65、76、97 这列有序数据中插入53 这个数,成为新的有序数列13、27、38、49、53、65、76、97;4定义数组时多开辟一个存储单元,用于存放待插入的数据;程序代码:运行结果:项目3.选做程序代码和运行结果可写在指导书背面编写函数 int findint p,int n,int x,在指针 p 所指的数组中查找整型数 x,如果 x 在数组中,则该函数返回 1,否则返回 0;n 为数组的大小;编写主函数测试之;。

程序循环结构实验报告(3篇)

程序循环结构实验报告(3篇)

第1篇实验名称:程序循环结构实验实验日期:2023年4月10日实验地点:计算机实验室实验目的:1. 理解循环结构在程序设计中的作用。

2. 掌握不同循环结构(如for循环、while循环、do-while循环)的语法和应用。

3. 能够根据实际问题选择合适的循环结构进行编程实现。

4. 提高编程实践能力。

实验环境:1. 操作系统:Windows 102. 编程语言:Python3.83. 开发工具:PyCharm实验内容:一、实验一:for循环结构1. 实验目的了解for循环的语法和使用方法,掌握其基本操作。

2. 实验步骤(1)编写一个程序,使用for循环打印1到10的整数。

(2)编写一个程序,使用for循环计算1到100的整数之和。

3. 实验代码```python打印1到10的整数for i in range(1, 11):print(i)计算1到100的整数之和sum = 0for i in range(1, 101):sum += iprint("1到100的整数之和为:", sum)```4. 实验结果程序成功运行,打印出1到10的整数和1到100的整数之和。

二、实验二:while循环结构1. 实验目的了解while循环的语法和使用方法,掌握其基本操作。

2. 实验步骤(1)编写一个程序,使用while循环计算1到10的整数之和。

(2)编写一个程序,使用while循环判断一个数是否为素数。

3. 实验代码```python计算1到10的整数之和sum = 0i = 1while i <= 10:sum += ii += 1print("1到10的整数之和为:", sum)判断一个数是否为素数num = 29is_prime = Truei = 2while i i <= num:if num % i == 0:is_prime = Falsebreaki += 1if is_prime:print(num, "是素数")else:print(num, "不是素数")```4. 实验结果程序成功运行,打印出1到10的整数之和以及29是否为素数。

《-C语言程序设计》实验指导书

《-C语言程序设计》实验指导书

《C语言程序设计》实验指导书课程编号:课程名称:C语言程序设计•实验学时:44一、本实验课的性质、任务与tl的本实验课目的是使学生掌握C语言编程的常用方法,熟悉该语言中的语法、词法规则,为以后进行软件开发和学习后继专业课程打下基础。

通过学习能够运用c语言中的各个知识点编写能完成一定功能的程序。

训练学生进行复杂程序设计的技能和培养良好程序设计的习惯,其重要程度决不亚于知识的传授。

把高级语言的学习与程序设计.上机实践紧密地结合起来,以提高学生能灵活运用新的知识分析问题和解决问题的能力。

二、本实验课所依据的课程基本理论本实验课基于C语言的语法和词法规则、数据的表示及算法的处理,而语法及算法正是高级语言程序设计的主要研究对象。

《C语言程序设计》的主要任务是:C语言是一种应用广泛结构化程序设计语言,本课程介绍c语言的基本概念.基本语法和编程方法,重点描述C语言的结构化的特征,并通过本课程的学习,使学生掌握一定的结构化程序设计的知识,以及用C语言编写程序的能力。

三、实验类型与要求在做每个实验之前,让学生对本次实验相关的内容进行预习、算法设计、流程图的设计、编写程序,做好实验的准备工作;写出预习报告,画出流程图, 要求独立完成。

说明:1>实验类型:设计性;2、实验要求:必做。

四、每组人数与实验学时数每组1人,实验学时数44学时。

五、考核方式与评分办法实验总成绩二出勤情况"0%+实验报告*20%+平时*30%+实验表现*40%六、本实验课配套教材或实验指导书谭浩强.C程序设计.北京:清华大学出版社,2006年3月第3版谭浩强.C程序设计题解与上机指导.北京:清华大学出版社,2006年3月第3版谭浩强.C程序设计试题汇编.北京:清华大学出版社,2006年3月第2版夏宽理.C语言程序设计.北京:中国铁道出版社,2006年2月第1版夏宽理.C语言程序设计上机指导与习题解答.北京:中国铁道出版社,2006年2月第1 版王士元・C高级实用程序设计.北京:清华大学出版社,1996年1月第1版七、实验报告要求在机器上交作业,每次实验成绩分为优、良、及格、不及格,未参加的为0分。

2014《C语言实验指导书》

2014《C语言实验指导书》

《C语言》实验指导书编(全校理工类本科用)2014年2月目录实验一简单C语言程序设计 (1)实验二顺序结构程序设计 (3)实验三选择结构程序设计 (5)实验四循环结构程序设计 (7)实验五数组程序设计 (10)实验六函数程序设计 (13)实验七指针程序设计 (16)实验八结构体程序设计 (17)附录1 C语言上机步骤 (18)实验一简单C语言程序设计实验类型:验证性实验课时: 4 指导教师:时间:2014 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:一、实验目的1.掌握所用的C语言环境的基本操作方法。

2.掌握编辑、编译、连接和运行C程序。

3.掌握C程序的数据类型、运算符,表达式。

二、实验内容和要求1.打开C语言环境,编辑如下程序,写出运行结果。

#include <stdio.h>void main(){printf(“Hello World!\n”);}2. 在屏幕上显示下列图形:* * * ** * ** **3.完成习题集中习题一的内容4. 已知三角形的三边长为3,4,5,求三角形周长5 .完成习题集中习题二内容实验二顺序结构程序设计实验类型:验证性实验课时: 2 指导教师:时间:2014 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:一、实验目的1.掌握基本输入输出函数、库函数的使用。

2.能够编程实现简单的结构化程序。

二、实验内容和要求1.执行程序,写出运行结果。

#include <stdio.h>void main(){float a = 9.1234567891234567890;double b = 9.1234567891234567890;printf("%f, %lf\n",a,b);printf("%.15f,%.15\n",a,b);};2.运行程序,写出结果。

#include <stdio.h>void main(){float x1;double y1 ;scanf("%f %lf ",&x1,&y1) ;printf("x1=%f,y1=%lf ",x1,y1) ;}程序运行时输入x的值123456789,输入y的值123456789。

C语言实验三程序 总结 逻辑运算和选择结构程序设计

C语言实验三程序 总结  逻辑运算和选择结构程序设计

方法二:用 switch 语句 分析:switch 语句是用于处理多分支的语句。注意,case 后的表达式必须是一个常量 表达式,所以在用 switch 语句之前,必须把 0~100 之间的成绩分别化成相关的常量。所有 A(除 100 以外) 、B、C、D 类的成绩的共同特点是十位数相同,此外都是 E 类。则由此可把 score 除十取整,化为相应的常数。 请同学们自己根据分析写出完整的程序段,并编译、运行、查看结果。

实验内容
1 已知三个整数 a,b,c,找出最大值放在 max 中。 #include <stdio.h> main() { 定义整数变量 a,b,c,max; 键盘输入 3 个整数 a,b,c; 在 a,b 中间求出较大数 max(如果 a>=b,则 max=a;否则 max=b); c 与 max 比较,如果 c>max,则 max=c; 输出最大数 max; } 根据上面的算法,编写程序;若输入下列数据,分析程序的执行顺序并写出输出结果。 序号 1 2 3 4 5 6 输入的 3 个整数 a、b、c 1,2,3 1,3,2 2,1,3 2,3,1 3,1,2 3,2,1 输出 max max=3 max=3 max=3 max=3 max=3 max=3
程序如下: #include <stdio.h> main() { int score; char grade; printf("请输入学生成绩:"); scanf("%d",&score); if(score>100||score<0) printf("\n 输入成绩错误!\n"); else{ if(score>=90) grade='A'; else if(score>=80) grade='B'; else if(score>=70) grade='C'; else if(score>=60) grade='D'; else grade='E'; printf("\n 成绩等级是%c\n",grade); } } 运行结果如下:

实验三 选择结构程序设计答案

实验三  选择结构程序设计答案

实验三 选择结构程序设计1. 求分段函数的值。

2226,035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其它 用if 语句实现,分别输出 5.0, 3.0,1.0,2.0,2.5,3.0,5.0x =--时的y 值。

x=input('x=?'); if x<0&x~=-3 y=x^2+x-6;elseif x>=0&x<5&x~=2&x~=3 y=x^2-5*x+6; elsey=x^2-x-1; end y2. 输入一个百分制成绩,要求输出成等级A 、B 、C 、D 、E 。

其中90分~100分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分以下为E 。

要求:(1)分别用if 语句和switch 语句实现。

(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。

x=input('x=?'); if x>100|x<0disp('Error input'); break;endif x>=90&x<=100disp('A')elseif x>=80&x<=89 disp('B')elseif x>=70&x<=79 disp('C')elseif x>=60&x<=69 disp('D')elsedisp('E')endx=input('x=?');if x>100|x<0disp('Error input');break;endswitch fix(x/10)case {9,10}disp('A')case {8}disp('B')case {7}disp('C')case {6}disp('D')otherwisedisp('E') end3. 硅谷公司员工的工资计算方法如下:(1)工作时间超过120小时者,超过部分加发15%。

实验三MATLAB的程序设计

实验三MATLAB的程序设计
error('k>n,put in again!!');
end
ifk==0
Y=1;
elseifk==1&&n==1
Y=1;
elseifk<=n
Y=(n/k)*c(k-1,n-1);
end
程序测试:
>> c(0,0)
ans =
1
>> c(0,1)
ans =
1
>> c(3,4)
ans =
4
7,计算以下和式,并估计其求和公式以及验证:
functionY=s(n)
Y=0;
fork=1:n
Y=Y+k;
end
测试:
>> s(3)
ans =
6
functionY=s(n)
Y=0;
fork=1:n
Y=Y+k^2;
end
测试:
>> s(3)
ans =
14
functionY=s(n)
Y=0;
fork=1:n
Y=Y+k^3;
end
测试:
>> s(2)
4
>> Joseph0(7,4)
2
11,求出 之间的所有素数;
M函数文件:
functionout = nprimes(N)
A= [1:N];
A(1)=0;
i=2;
whilei<= floor(sqrt(N));
forj= 2:fix(N/i)
A(i*j) = 0;
end;
i = A(find(A>i,1));
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三程序的选择结构
一、实验目的
1.掌握赋值语句的使用。

2.掌握用户交互函数InputBox与MsgBox的使用。

3.掌握IF语句与Select Case语句的使用。

二、实验内容
1.编写一个程序,判断用户输入的年份是否是闰年。

提示:利用InputBox输入年份,利用MsgBox显示判断结果。

2.编写一个程序,判断一个输入的3位整数是否“水仙花数”。

水仙花数是指一个3位数,其各位数字立方和等于该数本身。

例如,153=13+53+33。

3.输入三角形的三边a、b、c的值,根据其数值,判断能否构成三角形。

若能,还要显示三角形的性质:等边三角形、等腰三角形、直角三角形、任意三角形。

提示:使用if语句的嵌套。

4、编写程序,根据输入的学生成绩判断学生的等级。

100-90:等级为A 89-80:等级为B
79-70:等级为C 69-60:等级为D
50-0:等级为E
图3.1 运行界面
提示:可使用多分支IF语句实现。

5.某商场促销采用购物打折的优惠办法,即每位顾客一次购物金额:
①在1000元以上者,按九五折优惠;
②在2000元以上者,按九折优惠;
③在3000元以上者,按八五折优惠;
④在5000元以上者,按八折优惠。

程序界面如图3.2所示。

图3.2 运行界面
提示:
此例用多分支结构实现,注意计算公式和条件表达式的正确书写。

6.输入x、y、z三个整数,按从大到小的次序显示,如图3.3所示。

图3.3 运行界面
提示:
①利用InputBox函数输入3个数,存放到数值型变量中,然后对其进行比较;若放在字
符串变量中,有时会得到不正确的结果(因为字符串是从左到右的规则比较,例如会出现“34”>“2345”>“126789”的情况。

②对三个数进行排序,通过两两比较,一般可用三条单分支IF语句来实现。

方法如下:
先将x与y比较,使得x>y;然后将x与z比较,使得x>z,此时x最大;最后将y与z 比较,使得y>z。

7.输入一元二次方程ax2+bx+c=0的系数a,b,c,计算并输出一元二次方程的两个根x1,x2。

界面如图3-4所示。

图3.4 运行界面
提示:
求根时要对a、b、c三个系数分别考虑多种情况的处理,即:无实根、重根或两个实根。

一元二次方程ax2+bx+c=0有实根的条件是a<>0,并且b2-4ac>=0,则方程有解的条件表达式为a<>0 and b^2-4*a*c>=0
可使用IF语句判断上述条件:
If b^2-4*a*c < 0 Or a = 0 Then
msgbox("方程没有解")
Else
x1 = (-b + Sqr(b^2-4*a*c)) / (2 * a)
x2 = (-b - Sqr(b^2-4*a*c)) / (2 * a)
= Str(x1)
= Str(x2)
End If。

相关文档
最新文档