实验三 选择结构程序设计(解答)
C语言程序设计实验三答案
![C语言程序设计实验三答案](https://img.taocdn.com/s3/m/2a1e6e4089eb172ded63b7b9.png)
实验三 选择结构程序设计一、实验目的与要求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程序设计及应用(第二版)课后实验答案](https://img.taocdn.com/s3/m/ab1c171610661ed9ad51f356.png)
Matlab课后实验题答案实验一 MATLAB运算基础1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。
(1)0 122sin851ze =+(2)21ln( 2z x=+,其中2120.455i x+⎡⎤=⎢⎥-⎣⎦(3)0.30.330.3sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22a ae e az a a--+=++=--(4)2242011122123t tz t tt t t⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t=0:0.5:2.52. 已知: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] 解:3. 设有矩阵A 和B123453166789101769,111213141502341617181920970212223242541311A B ⎡⎤⎡⎤⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥==-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦(1) 求它们的乘积C 。
(2) 将矩阵C 的右下角3×2子矩阵赋给D 。
(3) 查看MATLAB 工作空间的使用情况。
4. 完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。
(2) 建立一个字符串向量,删除其中的大写字母。
解:(1) 结果:(2). 建立一个字符串向量 例如:ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。
2019年MATLAB)课后实验答案
![2019年MATLAB)课后实验答案](https://img.taocdn.com/s3/m/62de2f504693daef5ff73d1d.png)
实验一 MATLAB 运算基础1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。
(1) 0122sin 851z e =+(2) 21ln(2z 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:: 解:4. 完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。
(2) 建立一个字符串向量,删除其中的大写字母。
解:(1) 结果:(2). 建立一个字符串向量例如:ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A O S +⎡⎤=⎢⎥⎣⎦。
解: M 文件如下;5. 下面是一个线性方程组:1231112340.951110.673450.52111456x x x ⎡⎤⎢⎥⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦(1) 求方程的解。
(2) 将方程右边向量元素b 3改为再求解,并比较b 3的变化和解的相对变化。
(3) 计算系数矩阵A 的条件数并分析结论。
解: M 文件如下:123d4e56g9实验三 选择结构程序设计1. 求分段函数的值。
2226035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其他用if 语句实现,分别输出x=,,,,,,时的y 值。
实验三选择结构程序设计
![实验三选择结构程序设计](https://img.taocdn.com/s3/m/228f6f0df11dc281e53a580216fc700abb6852e3.png)
实验三选择结构程序设计程序设计是计算机科学中的核心技能之一,它涉及到使用编程语言来解决特定问题。
在程序设计中,选择结构是基本的控制流程之一,它允许程序根据不同的条件执行不同的代码块。
本实验旨在通过一系列练习,帮助学生理解和掌握选择结构程序设计的基本方法和技巧。
实验目的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`语句实现一个简单的菜单选择程序。
MATLAB)课后实验答案
![MATLAB)课后实验答案](https://img.taocdn.com/s3/m/185f368ccc1755270622082c.png)
实验一 MATLAB 运算基础1、 先求下列表达式得值,然后显示MATLAB 工作空间得使用情况并保存全部变量。
(1) 0122sin 851z e =+(2) 21ln(2z x =+,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+=++=--L (4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0、5:2、5 解:4、 完成下列操作:(1) 求[100,999]之间能被21整除得数得个数。
(2) 建立一个字符串向量,删除其中得大写字母。
解:(1) 结果:(2)、 建立一个字符串向量 例如:ch='ABC123d4e56Fg9';则要求结果就是:实验二 MATLAB 矩阵分析与处理1、 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵与对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。
解: M 文件如下;5、 下面就是一个线性方程组:1231112340.951110.673450.52111456x x x ⎡⎤⎢⎥⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦(1) 求方程得解。
(2) 将方程右边向量元素b 3改为0、53再求解,并比较b 3得变化与解得相对变化。
(3) 计算系数矩阵A 得条件数并分析结论。
解: M 文件如下:实验三 选择结构程序设计1、 求分段函数得值。
2226035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其他用if 语句实现,分别输出x=-5、0,-3、0,1、0,2、0,2、5,3、0,5、0时得y 值。
C语言实验报告参考答案
![C语言实验报告参考答案](https://img.taocdn.com/s3/m/f1e41b7db8f67c1cfad6b8a1.png)
长沙理工大学2010C语言实验报告参考答案实验一熟悉C语言程序开发环境及数据描述四、程序清单1.编写程序实现在屏幕上显示以下结果:The dress is longThe shoes are bigThe trousers are black答案:#include<stdio.h>main(){printf("The dress is long\n");printf("The shoes are big\n");printf("The trousers are black\n");}2.改错题(将正确程序写在指定位置)正确的程序为:#include <stdio.h>main(){printf("商品名称价格\n");printf("TCL电视机¥7600\n");printf("美的空调¥2000\n");printf("SunRose键盘¥50.5\n");2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。
答案:#include<stdio.h>main(){int a,b,c,x,y;a=150;b=20;c=45;x=a/b;y=a/c;printf("a/b的商=%d\n",x);printf("a/c的商=%d\n",y);x=a%b;y=a%c;printf("a/b的余数=%d\n",x);printf("a/c的余数=%d\n",y);}4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a 赋给c。
(提示:用条件运算符)答案:#include<stdio.h>main()int a,b,c;a=0;b=-10;c= (a>b) ? b:a;printf("c = %d\n",c);}五、调试和测试结果1.编译、连接无错,运行后屏幕上显示以下结果:The dress is longThe shoes are bigThe trousers are black3、编译、连接无错,运行后屏幕上显示以下结果:a/b的商=7a/c的商=3a/b的余数=10a/c的余数=154. 编译、连接无错,运行后屏幕上显示以下结果:c =-10实验二顺序结构程序设计四、程序清单1.键盘输入与屏幕输出练习问题1 D 。
matlab实验内容答案解析
![matlab实验内容答案解析](https://img.taocdn.com/s3/m/a173896a84868762caaed5e8.png)
实验报告说明:matlab课程实验需撰写8个实验报告,每个实验报告内容写每次实验内容中标号呈黑体大号字显示的题目。
第一次实验内容实验_ MATLAB运算基础一、实验目的1. 熟悉启动和退出MATLAB的方法。
2. 熟悉MATLAB命令窗口的组成。
3•掌握建立矩阵的方法。
4•掌握MATLAB各种表达式的书写规则以及常用函数的使用。
二、实验内容1•先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。
(1) Zl =2 sin85。
1 + e22-0.45,0.3“ _ -0.3d提示:利用冒号表达式生成a向量,求各点的函数值时用点乘运算。
t20</<1(4)Z4=$—11</<2 ,其中t = 0 : 0.5 : 2.52<t<3提示:用逻辑表达式求分段函数值。
2 •已知_12 34 -4_i 3 -rA =34 7 87,B = 2 0 33 65 73-2 7求下列表达式的值:(1) A+6二B和A-B+I(其中I为单位矩阵)。
(2) A*B和A.*B o(3) A^3 和A\3。
(4) A/B和B\A。
(5 ) [A , B]和[A([l f3],;);B A2]。
3•设有矩阵A和B_12345・~301667891017-69A =1112131415,B =023-41617181920970212223242541311(1) 求它们的乘积C。
2 将矩阵C的右下角3x2子矩阵赋给D(3) 查看MATLAB I作空间使用情况。
4.完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。
提示:先利用冒号表达式,再利用find和length函数。
(2) 建立一个字符串向量,删除其中的大写字母。
提示:利用find函数和空矩阵。
第二次实验内容实验三选择结构程序设计一、实验目的1. 掌握建立和执行M文件的方法。
2. 掌握利用if语句实现选择结构的方法。
实验三-选择结构程序设计(解答)-(2)
![实验三-选择结构程序设计(解答)-(2)](https://img.taocdn.com/s3/m/1d1d2b063a3567ec102de2bd960590c69ec3d8e3.png)
实验三选择结构程序设计(解答)1.改错题(1)下列程序的功能为:输入1个字母,如果它是小写字母,则首先将其转换成大写字母,再输出该字母的前序字母、该字母、该字母的后序字母,例如:输入g,则输出FGH;输入a,则输出ZAB;输入M,则输出LMN;输入Z,则输出YZA。
请纠正程序中存在错误,使程序实现其功能,程序以文件名sy3_1.c存盘。
#include <stdio.h>main(){char ch,c1,c2;printf("Enter a character:");ch=getchar();if((ch>='a')||(ch<='z')) // if((ch>='a')&&(ch<='z'))ch-=32;c1=ch-1;c2=ch+1;if(ch='A') // if(ch=='A')c1=ch+25;else if(ch='Z') // else if(ch=='Z')c2=ch-25;putchar(c1);putchar(ch);putchar(c2);putchar('\n');}改正后的程序:#include <stdio.h>main(){char ch,c1,c2;printf("Enter a character:");ch=getchar();if((ch>='a')&&(ch<='z'))ch-=32;c1=ch-1;c2=ch+1;if(ch=='A')c1=ch+25;else if(ch=='Z')c2=ch-25;putchar(c1);putchar(ch);putchar(c2);putchar('\n');}(2)下列程序的功能为:输入3个整数后,输出其中最大值。
实验3 选择结构程序设计
![实验3 选择结构程序设计](https://img.taocdn.com/s3/m/7afffbd176eeaeaad1f33001.png)
实验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教程课后实验报告题目及解答[第一至第五章]](https://img.taocdn.com/s3/m/512b4436f111f18583d05a96.png)
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程序设计及应用(第二版)课后实验答案](https://img.taocdn.com/s3/m/699ba6648f9951e79b89680203d8ce2f006665ab.png)
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 。
VB实验及答案
![VB实验及答案](https://img.taocdn.com/s3/m/9212567125c52cc58bd6be8d.png)
对象名称
属性名称
Form1
Caption
Command1 Caption
Label1
Caption
Label2
Caption
Label3
Caption
Text1、Text2 Text
属性值 象限判断 判断 X= Y=
(3)编写事件代码: Private Sub Command1_Click() Dim x!, y!
Private Sub Command2_Click() Dim f!, c! c = Val(Text2.Text) f = 9 / 5 * c + 32 Text1 = Str(f)
End Sub
(4)程序的运行及保存。 4 求圆的面积及圆柱体的体积,界面如图 2-3 所示。
【步骤】 (1)设计应用程序的界面:在窗体上创建两个命令按钮 Command1 和 Command2,四个标签 Label1、Label2、Label3 和 Label4,四个文本框 Text1、Text2、Text3 和 Text4。 (2)设置对象的属性
【步骤】
( 1 ) 在 窗 体 中 创 建 一 个 标 签 Label1 、 一 个 命 令 按 钮 Command1。
(2)在属性窗口中设置对象的属性:
对象名称
属性名称
属性值
Form1
Caption
设计界面
Label1
Caption
请留意此处
Command1
Caption
单击此处
(3)在 Command1 的 Click 事件中编写程序代码:
x = Val(Text1) y = Val(Text2) If x > 0 Then
C程序设计实验(3)-选择结构程序设计
![C程序设计实验(3)-选择结构程序设计](https://img.taocdn.com/s3/m/4d8c046f0b1c59eef8c7b4ab.png)
实验三 选择结构程序设计一:目的要求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](https://img.taocdn.com/s3/m/6230f8846f1aff00bed51e84.png)
实验三:选择结构程序设计一、实验方式:一人一机二、实验目的: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、实验分析。
实验三 选择结构程序设计
![实验三 选择结构程序设计](https://img.taocdn.com/s3/m/b3b25ca40029bd64783e2c63.png)
指导教师:何红玲班级:计科三班实验名称:选择结构程序设计姓名:蒋兴发实验编号:实验三学号:201111010309实验学时:2个组号:日期:2011年10月13日实验成绩:一、实验目的1.进一步熟悉C语言运行环境VC++6.02.掌握选择结构程序设计的方法;3. 掌握if-else语句的应用4. 掌握switch语句的应用二、实验内容1.体型判断按“体指数”对肥胖程度进行划分:体指数t = w / h2 (体重w单位为公斤,身高h单位为米)当t < 18时,为低体重;当18 ≤ t < 25时,为正常体重;当25 < t < 27时,为超重体重;当t ≥ 27时,为肥胖。
编程从键盘输入你的身高h和体重w,根据给定公式计算体指数t,然后判断你的体重属于何种类型。
用3种方法编程:算法1:用不带else子句的if语句编程算法2:用在if子句中嵌入if 语句的形式编程算法3:用在else子句中嵌入if 语句的形式编程[程序代码]1#include<stdio.h>int main(){float t,w,h;printf("输入升高:");scanf("%f",&h);printf("输入体重:");scanf("%f",&w);t=w/(h*h);if ( t< 18 )printf("低体重\n");if (t>=18 && t<25)printf("正常体重\n");if (t>25 && t<27)printf("超重体重\n");if (t > 27)printf("肥胖\n");return 0;}[运行结果]2. [程序代码]2#include<stdio.h>int main(){float t,w,h;printf("输入升高:");scanf("%f",&h);printf("输入体重:");scanf("%f",&w);t=w/(h*h);if (t<25){if(t>18&&t<25){printf("正常体重\n");}else{printf("低体重\n");}}elseif(t>=25&&t<27)printf("低体重\n");elseprintf("超重体重\n");return 0;}结果2.简单的计算器程序用switch语句编程设计一个简单的计算器程序。
【C语言基础精品】实验三选择结构程序设计
![【C语言基础精品】实验三选择结构程序设计](https://img.taocdn.com/s3/m/1c8eb174f111f18583d05a7f.png)
班级:学号:姓名:成绩:实验三选择结构程序设计【实验目的】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语言实验三程序 总结 逻辑运算和选择结构程序设计](https://img.taocdn.com/s3/m/39596c304b73f242336c5f39.png)
方法二:用 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); } } 运行结果如下:
实验三 选择结构程序设计答案
![实验三 选择结构程序设计答案](https://img.taocdn.com/s3/m/e9ef823ea32d7375a41780d3.png)
实验三 选择结构程序设计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%。
C语言程序设计习题与上机实验(实验答案)
![C语言程序设计习题与上机实验(实验答案)](https://img.taocdn.com/s3/m/eb9f08563c1ec5da50e27090.png)
第三部分上机实验与指导(答案)实验三选择结构程序设计1、main(){float score;char grade;printf(“Please input a student’ score:”);scanf(“%f”, &score);while(score>100 || score<0){printf(“\nInput error, try again!”);scanf(“%f”, &score);}switch ( (int)(score/10) ){case 10:case 9: grade=’A’;break;case 8: grade=’B’;break;case 7: grade=’C’;break;case 6: grade=’D’;break;case 5:case 4:case 3:case 2:case 1:case 0: grade=’E’;}printf(“score is %5.1f, score grade is %c.\n”, score, grade);}2、#include <stdio.h>main( ){float x, y ;printf(“Please input x:”);scanf(“%f”, &x);if (x < 0)y = 0;else if (x < 10)y = x ;else if ( x < 20 )y = 10;else if ( x < 40)y = 0.5 * x + 20;else{ printf(“Input Error!”);exit (0);}printf (“y=%g”, y);}3、include <stdio.h>void main(void){int choice;/* 显示菜单及输入提示信息*/printf("----------------------------------------------- \n") ;printf(" The Menu of Data Management \n") ;printf(" 1. Input Data \n") ;printf(" 2. Output Data \n") ;printf(" 3. Insert Data \n") ;printf(" 4. Delete Data \n") ;printf(" 0. Quit System \n") ;printf("----------------------------------------------- \n") ;printf(" Please enter your choice:\n") ;/* 接收从键盘输入的数;*/scanf("%d", &choice);/* 根据输入数据显示不同信息*/switch (choice){case 1: printf("Input Data ") ; break;case 2: printf("Output Data ") ; break;case 3: printf("Insert Data ") ; break;case 4: printf("Delete Data ") ; break;case 0: printf("Thanks!"); break;default: printf("Input Error! ");exit(0);}}实验四循环结构程序设计1、#include <stdio.h>main( ){char ch;int i;for (i=0; i<10;i++);{ch = getchar();if (ch >= ‘a’ && ch <= ‘z’){ch = ch - 32;}putchar (ch);}}2、从键盘输入一个长整数,计算其各位数之和并输出。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
else if ((x%3==0) && (x%7==0))
printf("%d can be divided by 3,7\n",x);
else if ((x%5==0) && (x%7==0))
printf("%d can be divided by 5,7\n",x);
if(num%3==0)
m+=three;
if(num%5==0)
m+=five;
if(num%7==0)
m+=seven;
switch(m)
{
case 7:
printf("%d can be divided by 3,5,7\n",num);
break;
case 6:
printf("%d can be divided by 5,7\n",num);
实验三选择结构程序设计
(解答)
1.改错题
(1)下列程序的功能为:输入1个字母,如果它是小写字母,则首先将其转换成大写字母,再输出该字母的前序字母、该字母、该字母的后序字母,例如:输入g,则输出FGH;输入a,则输出ZAB;输入M,则输出LMN;输入Z,则输出YZA。请纠正程序中存在错误,使程序实现其功能,程序以文件名sy3_1.c存盘。
min=b;
if(c<min)
min=c;
printf("a+b+c=%d a*b*c=%ld ave=%.2f", sum,ji, ave);
printf("\nmax=%d min=%d\n", max, min);
}
(2)编写一个程序实现如下功能:输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是一个小写字母,则把它变成大写字母;其它字符不变(程序以文件名sy3_8.c存盘)。
case 3:printf ("Mar");break;
case 4:printf ("Apr");
}
}
改法二
#include "stdio.h"
main()
{
char m;
printf("input the month number:\n");
scanf ("%c",&m);
switch (m)
{
break;
default:
printf("Input Operator error!\n");
}
}
(3)下列程序的功能为:猜价格,用户输入自己估计的价格,程序判断其正确性。请填写适当的符号或语句,使程序实现其功能,程序以文件名sy3_6.c存盘。
#include "stdio.h"
main()
{float a,b;
break;
case 5:
printf("%d can be divided by 3,7\n",num);
{
int a,b,d;
char ch;
printf("Please input a expression:");
scanf("%d%c%d",&a,&ch,&b);
switch(ch)
{
case '+':d=a+b;
printf("%d+%d=%d\n",a,b,d);
break;
case '-':d=a-b;
printf("!,@,…\n");
}
填空后的程序:
#include <stdio.h>
main()
{
char c;
scanf("%c", &c);
if(c>='0' && c<='9')
printf("0-9\n");
else if(c>='A' && c <='Z')
printf("A-Z\n");
printf ("请输入3个整数:\n");
scanf ("%d%d%d",&a,&b,&c);
max=a;
if (c>b)
{ if (b>a) max=c;}/* c>b>a */
else/* b>c */
{if (c>a) max=b;} /* b>c>a */
printf("3个数中最大者为:%d\n",max);
}
3.编程题
(1)编写一个程序实现如下功能:从键盘输入三个整数,输出这三个整数的和、平均值(保留2位小数)、积、最小值以及最大值(程序以文件名sy3_7.c存盘)。
参考源程序
#include <stdio.h>
main()
{
int sum=0ห้องสมุดไป่ตู้ a, b, c, max, min;
long ji=0;
printf("%d-%d=%d\n",a,b,d);
break;
case '*':d=a*b;
printf("%d*%d=%d\n",a,b,d);
break;
case '/':
if(b==0)
printf("Divisor is zero\n");
else
printf("%d/%d=%f\n",a,b,(float)a/b);/*强制类型转换*/
if(c>='0'&&c<='9')
__________________________
else if(________________________)
printf("A-Z\n");
_________________(c>='a'&&c<='z')
printf("a-z\n");
_____________________________
if(ch='A')// if(ch=='A')
c1=ch+25;
else if(ch='Z')// else if(ch=='Z')
c2=ch-25;
putchar(c1);
putchar(ch);
putchar(c2);
putchar('\n');
}
改正后的程序:
#include <stdio.h>
else if (x%3==0)
printf("%d can be divided by 3\n",x);
else if (x%5==0)
printf("%d can be divided by 5\n",x);
else if (x%7==0)
printf("%d can be divided by 7\n",x);
printf("3个数中最大者为:%d\n",max);
}
改正后的程序:(方法2)
#include "stdio.h"
main()
{
int a,b,c,max;
printf ("请输入3个整数:\n");
scanf ("%d%d%d",&a,&b,&c);
max=a;
if (b>c)
{ if (b>a)max=b;}
若该字符是数字输出字符串"0-9"
若该字符是大写字母输出字符串"A-Z"
若该字符是小写字母输出字符串"a-z"
若该字符是其他字符输出字符串"!,@,…"
请填写适当的符号或语句,使程序实现其功能,程序以文件名sy3_4.c存盘。
#include <stdio.h>
main()
{char c;
scanf(_____________________);
参考源程序
#include <stdio.h>
main()
{
char ch;
printf("输入一个字符:");
ch=getchar();
if(ch>='A' && ch<='Z')
ch+=32;
else if(ch>='a' && ch<='z')
ch-=32;
printf("输出结果:");
putchar(ch);
printf("\n");
}
(3)编写一个程序实现如下功能:输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一(程序以文件名sy3_9.c存盘):