厦门理工学院C语言报告实验3顺序、选择结构
C语言程序设计实验三:顺序与选择结构
![C语言程序设计实验三:顺序与选择结构](https://img.taocdn.com/s3/m/fab85a26cfc789eb172dc8c0.png)
C 语言程序设计实验三:顺序与选择结构
1、请根据输入的x值和以下公式,计算输出分段函数y的值。
2、编写一个C 程序,把整数0,1,..6依次转换成Sunday ,Monday ,…Saturday 并输出, 整数0,…,6由键盘输入。
如果输入错误,输出“error ”。
(提示:此题可以用if 语句实现,不需要用循环。
)
说明:
(1)请大家按学号来坐,便于考勤和管理。
(2)请珍惜宝贵的实验时间!不要做与实验无关的事情,比如聊QQ 、上网或打游戏。
(3)直接把C 语言代码粘贴到相应的实验题目下方,上交实验报告时只交word 文档。
(4) 文档名称:班级+学号后2位+姓名+实验编号,例如12通1班12张山实验二.doc 。
⎪⎩⎪⎨⎧-+=10
010x x y )
1()10()0(>≤<≤x x x。
厦门理工学院c语言程序设计期末试题ABC(含答案) 考试卷子
![厦门理工学院c语言程序设计期末试题ABC(含答案) 考试卷子](https://img.taocdn.com/s3/m/2d044e9b6bec0975f465e250.png)
c语言程序设计期末试题A(含答案)一、单项选择题(选择一个最佳答案,每题2分,共20分)1. 一个C程序的执行是从( )。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束2. 下列选项中,不能用作标识符的是( )。
A) _1234_ B) _1_2 C) int_2_ D) 2_int_3. 以下定义语句中正确的是( )。
A) char a='A'b='B'; B) float a=b=10.0;C) int a=10,*b=&a; D) float *a,b=&a;4. 设有以下定义:#define d 2int a=0; double b=1.25; char c=’A’;则下面语句中错误的是()。
A) a++; B) b++ C) c++; D) d++;5. 以下4个选项中,不能作为一条C语句的是( )。
A) {;} B) a=0,b=0,c=0; C) if(a>0); D) if(b==0) m=1;n=2;6. 有以下定义语句double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( )。
A) a=a+b=b++ B) w%(int)a+b) C) (c+w)%(int)a D) w=a==b;7. 设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是( )。
A) p=1; B) *q=2; C) q=p; D) *p=5;8. 设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是( )。
A) scanf(“%d”,pa) ; B) scanf(“%d”,a) ;C) scanf(“%d”,&pa) ; D) scanf(“%d”,*pa);9. 若有说明:char *language[]={”FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C”};则表达式*language[1]>*language[2]比较的是()。
《C程序设计》选择结构程序设计实验报告
![《C程序设计》选择结构程序设计实验报告](https://img.taocdn.com/s3/m/7132163aa200a6c30c22590102020740be1ecdd1.png)
《C程序设计》选择结构程序设计实验报告2、完成改错后的程序#include <stdio.h>#include <ctype.h>char fun(char c){ if (c>='A' && c<='Z')/**********found**********/c=c+32;if (c>='a' && c<='u')/**********found**********/c=c+5;else if(c>='v' && c<='z')c=c-21;return c;}main ( ){ char cl, c2;printf("Enter a letter(A-Z):");cl=getchar( );if (isupper(cl)){ c2=fun(cl);printf("\n\nThe letter %c change to %c\n",cl,c2);}elseprintf("\nEnter (A-Z) !\n");}运行结果:(截图)3、解题思路:源程序:1.#include<stdio.h>#include<math.h>void main(){float s;int m,year;printf("please input money and year:");scanf("%d%d",&m,&year);switch(year){case 1:s=m*pow((1+0.03),year);break;case 2:s=m*pow((1+0.033),year);break;case 3:case 4:s=m*pow((1+0.038),year);break;case 5:s=m*pow((1+0.042),year);break;default:s=m*pow((1+0.042),year);break;}printf("s=%f\n",s);}2.#include<stdio.h>#include<math.h>void main(){float s;int m,year;printf("please input money and year:");scanf("%d,%d",&m,&year);if(year==1)s=m*pow((1+0.03),year);if(year==1)s=m*pow((1+0.03),year);if(year==2)s=m*pow((1+0.033),year);if(year>=3&&year<=4)s=m*pow((1+0.038),year);if(year>=5)s=m*pow((1+0.042),year);printf("s=%f\n",s);}运行结果:(截图)4、解题思路:源程序:#include<stdio.h>main(){int i,yue,year,day;printf("please input nian and yue :");scanf("%d,%d",&year,&yue);switch(yue){case 1:printf("有31天");break;case 2:if(year%4==0&&year%100!=0||year%400==0)printf("有29天");else printf("有28天");break;case 3:printf("有31天");break;case 4:printf("有30天");break;case 5:printf("有31天");break;case 6:printf("有30天");break;case 7:printf("有31天");break;case 8:printf("有31天");break;case 9:printf("有30天");break; case 10:printf("有31天");break; case 11:printf("有30天");break; case 12:printf("有31天");break; }}运行结果:(截图)。
[C语言]顺序、选择结构实验报告
![[C语言]顺序、选择结构实验报告](https://img.taocdn.com/s3/m/072da5a1941ea76e59fa0428.png)
实验报告课程名称程序设计语言C/C++实验项目顺序结构,选择结构编程与调试一、实验目的1.掌握C语言中使用最多的一种语句——赋值语句的使用方法。
2.掌握各种数据类型的输入输出的方法,能正确使用各种格式转换符。
3.掌握选择结构程序设计的方法和用用关系表达式、逻辑表达式表示选择结构的条件。
二、实验内容1.调试关于各种格式转换符的正确使用方法的程序并验证结果的正确性。
2.编写并调试简单的关于数据类型输入输出的程序。
3.编写并调试运行关于if语句和switch语句使用的程序。
三、实验步骤及结果分析1.从键盘输入两个整数,求两数之和并输出。
#include <stdio.h>int main ( ){int a,b,c;printf("请输入两个整数:\n");scanf("%d,%d",&a,&b);c=a+b;printf("两数之和为:%d\n",c);return 0;}2.从键盘输入园的半径r,求园的周长C、面积S并输出。
#include <stdio.h>int main( ){float pai=3.14159;float r,C,S;printf("Please enter the radius of the circle:");scanf("%f",&r);C=2*pai*r;S=pai*r*r;printf("The circumference of the circle C is %.2f\n",C); printf("The area of the circle is %.2f\n",S);return 0;}3.从键盘输入一个小写字母,要求输出其对应的大写字母。
#include <stdio.h>int main (){char c1,c2;c1=getchar();c2=c1-32;putchar(c2);printf("\n");return 0;}4.输入圆锥的底面圆的半径和高,求圆锥的表面积和体积。
厦门理工c语言课程设计
![厦门理工c语言课程设计](https://img.taocdn.com/s3/m/e658265902d8ce2f0066f5335a8102d277a2617d.png)
厦门理工c语言课程设计一、课程目标知识目标:1. 理解C语言的基本语法和结构,掌握数据类型、变量、运算符的使用。
2. 学会使用C语言进行顺序、选择和循环结构的编程,并能运用逻辑思维解决问题。
3. 掌握函数的定义、调用和参数传递,理解模块化编程的思想。
4. 了解数组、字符串、指针在C语言中的应用,并能运用它们进行数据处理。
技能目标:1. 能够运用C语言编写简单的程序,解决实际问题。
2. 学会使用C语言调试工具,具备基本的程序调试能力。
3. 能够阅读和分析C语言代码,理解他人编写的程序逻辑。
4. 培养良好的编程习惯,编写规范、简洁、高效的代码。
情感态度价值观目标:1. 培养学生对编程的兴趣,激发学习主动性和创新精神。
2. 增强学生的逻辑思维能力,提高问题分析和解决能力。
3. 培养学生的团队协作意识,学会与他人共同解决问题。
4. 培养学生严谨、务实的科学态度,树立正确的价值观。
本课程针对厦门理工学院学生特点,结合C语言课程性质和教学要求,将目标分解为具体的学习成果。
课程旨在使学生掌握C语言的基本知识和技能,培养编程兴趣和逻辑思维能力,同时注重团队协作和科学态度的培养,为后续课程和实际应用打下坚实基础。
二、教学内容1. C语言基础知识:数据类型、变量、常量、运算符、表达式。
教材章节:第1章 C语言概述,第2章 数据类型与运算符。
2. 控制结构:顺序结构、选择结构、循环结构。
教材章节:第3章 控制语句。
3. 函数:函数定义、调用、参数传递、递归函数。
教材章节:第4章 函数。
4. 数组与字符串:一维数组、二维数组、字符串操作。
教材章节:第5章 数组与字符串。
5. 指针:指针的概念、指针与数组、指针与字符串、函数指针。
教材章节:第6章 指针。
6. 结构体与联合体:结构体的定义、初始化、结构体数组、联合体。
教材章节:第7章 结构体与联合体。
7. 文件操作:文件的概念、文件打开与关闭、文件读写、文件定位。
教材章节:第8章 文件。
C语言:3种基本结构试验报告
![C语言:3种基本结构试验报告](https://img.taocdn.com/s3/m/e2b78c16cdbff121dd36a32d7375a417866fc115.png)
C语言:3种基本结构试验报告
实验目的:了解C语言中的三种基本结构:顺序结构、选择结构和循环结构,并学会运用这三种结构进行编程。
实验内容:
1. 顺序结构
顺序结构是指按照一定的顺序逐步执行程序中的语句,也就是从程序的开始处到结束处,所有的语句都是按照顺序执行的。
以下是一段简单的顺序结构示例代码:
#include <stdio.h>
在该示例代码中,程序首先读入两个整数a和b,然后将它们相加并将结果存储在变量c中,最后输出计算结果。
2. 选择结构
选择结构是根据条件的真假,选择执行的语句,在C语言中,if语句是最常见的选择结构,也是最基本的控制语句,它可以根据条件的真假选择执行不同的语句块。
在该示例代码中,程序首先读入一个整数分数,然后使用if语句判断分数是否大于等于60,如果是,则输出“及格了”,否则输出“不及格”。
3. 循环结构
循环结构是程序重复执行一段程序代码的结构,C语言中,while语句、do-while语句和for语句都可以实现循环结构。
在该示例代码中,程序使用while语句实现了一个循环,从1开始依次输出1-10这十个数字。
实验结果分析:。
实验一实验三报告实验报告二厦门理工学院C语言选修课上机实验实验循环结构
![实验一实验三报告实验报告二厦门理工学院C语言选修课上机实验实验循环结构](https://img.taocdn.com/s3/m/b5c9142c6edb6f1afe001f3c.png)
实验序号:1实验项目:初识C语言与C编程环境
学 号
0908012232
姓 名
叶志伟
专业、班级
09机制2
实验地点
1-511
指导教师
胡亮
实验时间
0301
一、实验目的及要求
1.掌握Visual C 6.0程序设计集成环境的使用。
2.学会简单程序的调试。
二、实验设备(环境)及要求
程序:#include<math.h>
main ( )
{
float x;
x=sin(0.45456);
printf("%f \n",x);
}
运行结果截图:
可知语句float x;的作用是:
定义X为单精度的浮点型
可知sin的作用是:三角函数名
5.模仿教材中的例题,编写一个求两数之差的程序。编辑、编译、连接和运行。运行结果是什么?
打造全网一站式需求
欢迎您的下载,资料仅供参考
}
运行结果截图:
3.输入下列源程序,进行修改、编译、连接和运行。运行的结果是什么?
程序:main ( )
{
printf("Programming \n");
printf("is Fun.\n");
}
运行结果截图:
可知\n的作用是:
使输出数据另起一行
4.输入下列源程序,进行修改、编译、连接和运行。运行的结果是什么?
运行结果截图:
【思考题】
1.什么是源程序?什么是编译程序?C语言源程序结构是怎样的?
2.对照课本源程序,举例说明程序中哪些是注释、预处理命令、声明语句、可执行语句、函数定义、函数调用、关键词、main()函数等。
实验3 最简单的C程序设计——顺序程序设计(实验指导书)
![实验3 最简单的C程序设计——顺序程序设计(实验指导书)](https://img.taocdn.com/s3/m/84cabc357375a417876f8f11.png)
实验3 最简单的C程序设计——顺序程序设计1、实验目的(1)掌握C语言中使用最多的一种语句——赋值语句的使用方法;(2)掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符;(3)进一步掌握编写程序和调试程序的方法。
2、实验内容和步骤(1)通过下面的程序掌握各种格式转换符的正确使用方法。
①输入以下程序:②运行此程序并分析结果。
③在此基础上,将程序第9~14行改为运行程序,并分析结果。
④用sizeof运算符分别检测程序中各类型的数据占多少字节。
例如:int型变量a的字节数为sizeof(a)或sizeof(int),用printf函数语句输出各类型变量的长度(字节数)。
(2)设圆半径为r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积。
用scanf 函数输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。
请编写程序。
(教材P.84第3章习题第7题)(3)计算存款利息。
(教材P.82第3章习题第2题)有1000元,想存5年,可按以下5种办法存:(1)一次存5年期。
(2)先存2年期,到期后将本息再存3年期。
(3)先存3年期,到期后将本息再存2年期。
(4)存1年期,到期后将本息再存1年期,连续存5次。
(5)存活期存款。
活期利息每一季度结算一次。
假如2007年12月的银行存款利息如下:1年期定期存款利息为4.41%;2年期定期存款利息为4.68%;3年期定期存款利息为5.4%;5年期定期存款利息为5.85%;活期存款利息为0.72%(活期存款每一季度结算一次利息)。
注:计算利息的公式参见教材P.83第3章习题第2题。
(4)编程序将“China”译成密码,密码规律为:用原来的字母后面的四个字母代替原来的字母。
例如:字母“A”后面第四个字母是“E”,用“E”代替“A”。
因此“China”应译为“Glmre”。
请编一程序,用赋初值的方法使c1,c2,c3,c4,c5这5个字符型变量的值分别为’C’,’h’,’i’,’n’,’a’,经过运算,使得c1,c2,c3,c4,c5分别变为’G’,’l’,’m’,’r’,’e’。
c语言选择结构程序设计实验报告
![c语言选择结构程序设计实验报告](https://img.taocdn.com/s3/m/6733d3fbb04e852458fb770bf78a6529657d3540.png)
c语言选择结构程序设计实验报告实验目的:通过程序设计,熟悉C语言中选择结构if-else、switch-case的使用,掌握结构化程序设计方法。
实验环境:Windows10操作系统、Dev C++编译器实验内容:1. if-else结构首先,我们先来看看if-else结构的语法格式:if(条件1){//如果条件1成立,执行该语句块}else if(条件2){//如果条件1不成立,但条件2成立,执行该语句块}else{//如果条件1和条件2都不成立,执行该语句块}if-else语句块的执行顺序是:先判断条件1是否成立,如果成立,就执行if语句块中的语句,然后跳过else-if和else语句块;如果条件1不成立,就继续判断条件2是否成立,如果成立,就执行else-if语句块中的语句,然后跳过else语句块;如果条件2也不成立,就执行else语句块中的语句。
下面给出一个简单的例子,通过if-else结构来判断一个数的正负性:2. switch-case结构switch(表达式){case 常量1://如果表达式的值等于常量1,执行该语句块break;case 常量2://如果表达式的值等于常量2,执行该语句块break;...default://如果表达式的值既不等于常量1,也不等于常量2,执行该语句块break;}switch-case语句块的执行过程是:首先计算表达式的值,然后与每个case后的常量进行比较,如果匹配成功,则执行对应的语句块,直到遇到break或者switch-case语句块执行完毕;如果所有case都不匹配,就执行default语句块中的语句。
实验总结:本次实验是一次很好的C语言程序设计练习,通过对选择结构的学习和应用,不仅巩固了基本知识点,还学习了如何使用结构化程序设计方法来解决实际问题。
在实验过程中,我遇到了一些问题,比如在switch-case语句块中,没有添加break语句会导致程序出错,需要仔细检查。
C语言实验报告之顺序、选择、循环结构
![C语言实验报告之顺序、选择、循环结构](https://img.taocdn.com/s3/m/4eb9b980bceb19e8b8f6ba73.png)
一、实验的目的1、学习在VC++环境下编辑调试C语言程序的方法。
2、掌握在C语言中的各种数据类型,以及如何定义整型、实型、字符型的变量,并进行赋值的方法。
3、掌握顺序程序的思路,特别是赋值语句的使用方法。
4、掌握各种类型数据的输入输出方法的正确应用,熟悉各种格式控制符的作用。
5、学会在选择结构中正确应用关系表达式及逻辑表达式。
6、熟练掌握if语句和switch语句的使用。
7、学会选择结构问题算法的编制与调试应用。
8、熟练掌握while语句、do-while语句和for语句实现循环的方法。
9、学会循环问题的编制与调试、运行。
二、实验内容与要求本实验涵盖顺序、选择、循环三部分程序设计的应用,要求每部分完成两个问题的源代码的编辑、编译、连接与运行,最终产生相关的运行结果,按规定要求提交相应的实验报告。
具体要求完成的问题如下:(谭浩强C语言第四版)(1)P82/2(2)P84/6(3)P112/6(4)P113/9(5)P140/3(6)P141/16三、算法设计思想(1)P82/2:存款利息的计算。
有1000元,想存5年,可按以下5种办法存:(1)一次存5年。
(2)先存2年期,到期后将本息再存3年期。
(3)先存3年期,到期后将本息再存2年期。
(3)存1年期,到期后将本息再存1年期,连续存5次。
(2)存活期,活期利息每一季度结算一次。
2007年12月的银行存款利息如下:1年期定期存款利息为4.14%;2年期定期存款利息为4.68%;3年期定期存款利息为5.4%;5年期定期存款利息为5.85%;活期存款利息为0.72%(活期利息每一季度结算一次利息)。
如果为年利率,为存款年数,则计算本息和点的公式是:1年期本息和:p=1000*(1+r).年期本息和:p=1000*(1+n*r).存次年期的本息和:p=1000*pow(1+r,n).活期存款本息和:p=1000*pow(1+r/4,4n).说明:1000*(1+r/4)是一个季度的本息和.定义数据类型,进行相关运算并输出结果(2)P84/6:请编程序将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。
c语言顺序结构程序实验报告
![c语言顺序结构程序实验报告](https://img.taocdn.com/s3/m/229cb34d77c66137ee06eff9aef8941ea76e4be0.png)
c语言顺序结构程序实验报告C语言顺序结构程序实验报告引言:C语言作为一种高级编程语言,具有广泛的应用领域。
在本次实验中,我们将学习和实践C语言中的顺序结构程序设计。
通过编写一系列的实验程序,我们将深入了解顺序结构的概念和原理,并掌握如何使用C语言编写简单的顺序结构程序。
实验目的:1. 了解顺序结构程序的概念和特点;2. 掌握C语言中的基本数据类型和变量的声明;3. 学习使用C语言中的输入输出函数;4. 熟悉C语言中的基本运算符和表达式;5. 掌握C语言中的条件语句和循环语句的使用。
实验步骤:1. 实验程序一:计算圆的面积和周长首先,我们需要声明一个常量PI,并定义一个变量radius用于存储圆的半径。
然后,通过输入函数获取用户输入的半径值,并使用相应的公式计算圆的面积和周长。
最后,通过输出函数将计算结果显示在屏幕上。
2. 实验程序二:华氏温度转换为摄氏温度在这个实验中,我们需要定义一个变量fahrenheit用于存储华氏温度的值。
然后,通过输入函数获取用户输入的华氏温度,并使用相应的公式将其转换为摄氏温度。
最后,通过输出函数将转换后的摄氏温度显示在屏幕上。
3. 实验程序三:判断一个数是否为偶数在这个实验中,我们需要定义一个变量num用于存储用户输入的数值。
然后,通过输入函数获取用户输入的数值,并使用条件语句判断该数是否为偶数。
最后,通过输出函数将判断结果显示在屏幕上。
4. 实验程序四:计算1到n的累加和在这个实验中,我们需要定义一个变量n用于存储用户输入的数值。
然后,通过输入函数获取用户输入的数值,并使用循环语句计算1到n的累加和。
最后,通过输出函数将计算结果显示在屏幕上。
实验结果与分析:通过以上实验程序的编写和运行,我们成功实现了顺序结构程序的设计。
在实验程序一中,我们计算了圆的面积和周长,通过输入函数获取用户输入的半径值,并使用相应的公式计算出了圆的面积和周长。
在实验程序二中,我们将华氏温度转换为摄氏温度,通过输入函数获取用户输入的华氏温度,并使用相应的公式将其转换为摄氏温度。
c语言顺序表实验报告
![c语言顺序表实验报告](https://img.taocdn.com/s3/m/1c36b800326c1eb91a37f111f18583d049640fd6.png)
c语言顺序表实验报告C语言顺序表实验报告引言:C语言是一种广泛应用于软件开发领域的编程语言,其灵活性和高效性备受开发者青睐。
在本次实验中,我们将探索C语言中的一种数据结构——顺序表。
顺序表是一种线性表的存储结构,通过数组实现,具有快速访问元素的特点。
本实验将通过实际操作,深入了解顺序表的创建、插入、删除和查找等基本操作,并对其性能进行评估。
实验目的:1. 掌握顺序表的创建和初始化方法;2. 熟悉顺序表的插入、删除和查找等基本操作;3. 评估顺序表在不同操作下的性能。
实验步骤:1. 创建顺序表在C语言中,可以通过定义一个结构体来表示顺序表,其中包含一个数组和一个记录当前元素个数的变量。
通过动态内存分配,可以根据需要调整顺序表的大小。
```ctypedef struct {int* data; // 数组指针int length; // 当前元素个数int capacity; // 顺序表的容量} SeqList;```在主函数中,可以通过调用malloc函数为顺序表分配内存空间,并对其进行初始化。
```cSeqList* createSeqList(int capacity) {SeqList* list = (SeqList*)malloc(sizeof(SeqList));list->data = (int*)malloc(capacity * sizeof(int));list->length = 0;list->capacity = capacity;return list;}```2. 插入元素顺序表的插入操作需要考虑插入位置的合法性以及顺序表是否已满的情况。
在插入元素时,需要将插入位置之后的元素后移一位,为新元素腾出空间。
```cvoid insert(SeqList* list, int position, int element) {if (position < 0 || position > list->length) {printf("插入位置非法!");return;}if (list->length >= list->capacity) {printf("顺序表已满,无法插入!");return;}for (int i = list->length - 1; i >= position; i--) {list->data[i + 1] = list->data[i];}list->data[position] = element;list->length++;}```3. 删除元素顺序表的删除操作需要考虑删除位置的合法性以及顺序表是否为空的情况。
实验3 顺序结构程序设计
![实验3 顺序结构程序设计](https://img.taocdn.com/s3/m/04f98dd251e2524de518964bcf84b9d528ea2cbe.png)
实验3 顺序结构程序设计实验3顺序结构程序设计班级:学号:姓名:实验3顺序结构编程一.实验目的1.掌握赋值语句的使用。
2.熟练掌握各种类型数据的输入输出方法,能正确使用各种格式转换符。
3.熟练掌握编写顺序结构程序的方法。
4.熟练掌握调试程序的方法。
二、实验要求熟练使用vc集成环境,能利用已学知识设计选择结构程序,并解决实际问题。
三、实验内容1.程序调试与测试《C编程学习指南》p241-249第15章程序调试和测试。
不要写实验报告。
2.程序错误纠正《c程序设计学习辅导》p258-259实验内容部分中的(1)①-④。
3.程序设计3-1从键盘输入一个整数作为半径,以计算圆的周长和面积。
输入输出示例请输入一个整数R:10周长c=62.831853,面积s=314.1592653-2编写一个程序来寻找一元二次型方程AX2?bx?C0的根以及系数a、B和C都是浮点数键盘输入。
(提示:求平方根的函数为sqrt(),所需头文件为math.h)输入/输出示例(需要运行6次)输入一元二次方程的系数a,b,c:000?方程无穷解!输入一元二次方程的系数a、B、C:001,方程没有解!输入一元二次方程的系数a,b,c:021方程有一个根0x=-0.5输入一元二次方程的系数a、B、C:121。
方程有两个相同的实根:X1=x2=-1输入一元二次方程的系数a,b,c:2.18.93.5方程有两个不同的实根:x1=-0.438662,x2=-3.799433输入一元二次方程的系数a,b,c:221方程有两个不同的虚根:X1=-0.5+0.5i,X2=-0.5-0.5i四.实验结果与分析在实验报告中,回答实验内容2的相关问题,列出相应的源程序和实验内容3的程序运行结果截图,分析实验中遇到的问题和解决问题的方法。
(注意:重新翻页。
不要改变实验报告的结构,清楚地写下页码和问题号,源程序应以自己的中文名称命名。
例如,问题3-1可以命名为“Zhang San_3-1.CPP”,其名称和问题号应出现在操作的屏幕截图中)遇到的问题:一开始没有办法很好的输出虚根,总是显示错误,最后运用sqrt(-disc)的方法先计算出来数值,然后用%8.4fi\\n的方式来进行表达。
实验三 顺序结构程序设计
![实验三 顺序结构程序设计](https://img.taocdn.com/s3/m/b32e70ed19e8b8f67c1cb9aa.png)
实验三顺序结构程序设计一、实验目的1、掌握C 语言中赋值语句的使用方法;2、掌握不同类型数据的输入输出方法,能正确使用各种格式字符;二、实验预习1、认真阅读数据的输入输出部分内容。
三、实验指导1、从键盘输入两个0 到127 的整数,求两数的平方差并输出其值以及这两个整数的ASCII 码对应的字符。
(1)算法分析:标准ASCII 码值范围是0 到127,所以在这范围内的数可以以字符形式输出,实现方法是用格式输出函数并用格式符c 控制输出。
(2)根据结果书写源程序#include<stdio.h>void main( ){int x,y,sub ;scanf("%d%d",&x,&y);/* 变量前一定要加取地址符& */sub=x*x-y*y ;printf("%c,%c,%d",x,y,sub);}(3)在C 编辑环境下编辑源程序。
(4)编译【F9】,直到程序没有错误。
(5)运行【Ctrl+F9】,从键盘输入:100 50↙注意输入时两数间应以空格间隔,不能用逗号,只有源程序输入函数中两格式符以逗号间隔时输入才可以是:100,50↙(6)查看结果【Alt+F5】,输出内容如下:d,2,75002、输入程序#include <stdio.h>void main( ){int a,b ;float d,e ;char c1,c2 ;double f,g ;long m,n ;unsigned int p,q ;a=61 ;b=62 ;c1='a' ;c2='b' ;d=3.56 ;e=-6.87 ;f=3157.890121 ;g=0.123456789 ;m=50000 ;n=-60000 ;p=32768 ;q=40000 ;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.12f\nm=%ld,n=%ld\np=%u,q=%u\n",f,g,m,n,p,q);}(1)运行程序并分析结果。
厦门理工c语言数据结构实验
![厦门理工c语言数据结构实验](https://img.taocdn.com/s3/m/f2225c9ba26925c52dc5bf81.png)
《数据结构》实验报告实验序号:6 实验项目名称:树和二叉树的操作}while(x!=-9999);}改写以上程序,实现功能如下(任选两题):1.编写函数实现前序、中序和后序遍历。
运行结果截图:2.编写函数实现计算叶节点个数。
运行结果截图:四、分析与讨论附源程序清单:1.#include <stdlib.h>#include <stdio.h>typedef int TElemType;typedef struct BiTNode{TElemType data;struct BiTNode *lchild,*rchild;}BiNode, *Bitree;DLR( Bitree root ){ if (root !=NULL) { //非空二叉树printf("%d",root->data); //访问DDLR(root->lchild); //递归遍历左子树DLR(root->rchild); //递归遍历右子树}return(0);}LDR(Bitree root){ if(root !=NULL){LDR(root->lchild);printf("%d",root->data);LDR(root->rchild);}return(0);}LRD (Bitree root){ if(root !=NULL) {LRD(root->lchild);LRD(root->rchild);printf("%d",root->data);}return(0);}Bitree root;//定义根结点void insert_data(int x) /*生成/树*/{Bitree p,q,s;s=(Bitree)malloc(sizeof(BiNode)); //创建结点s->data=x; //结点赋值s->lchild=NULL;s->rchild=NULL;if(!root){root=s;}else{p=root;while(p) /*如何接入二叉排序树的适当位置*/{q=p;if(p->data==x) //相同结点不能重复插入{printf("data already exist! \n");return;}else if(x<p->data)p=p->lchild;elsep=p->rchild;}if(x<q->data)q->lchild=s;elseq->rchild=s;}}void main() /*先生成二叉排序树*/{int i=1,x; //i记录结点个数,x存放结点值root=NULL; /*千万别忘了赋初值给root!*/printf("请输入数据,-9999表示输入结束\n");do{printf("please input data %d:",i);i++;scanf("%d",&x); /*从键盘采集数据,以-9999表示输入结束*/if(x==-9999){printf("\nNow output data value:\n");}elseinsert_data(x); /*调用插入数据元素的函数*/}while(x!=-9999);printf("\nDLR");DLR(root);printf("\nLDR");LDR(root);printf("\nLRD");LRD(root);}2.#include <stdlib.h>#include <stdio.h>typedef int TElemType;typedef struct BiTNode{TElemType data;struct BiTNode *lchild,*rchild;}BiNode, *Bitree;Bitree root;//定义根结点int CountLeaf (Bitree root){ //返回指针T所指二叉树中所有叶子结点个数int m,n;if (!root ) return 0;if (!root->lchild && !root->rchild) return 1;else {m = CountLeaf( root->lchild); n = CountLeaf( root->rchild);return (m+n);} //else} // CountLeafvoid insert_data(int x) /*生成/树*/{Bitree p,q,s;s=(Bitree)malloc(sizeof(BiNode)); //创建结点s->data=x; //结点赋值s->lchild=NULL;s->rchild=NULL;if(!root){root=s;}else{p=root;while(p) /*如何接入二叉排序树的适当位置*/{q=p;if(p->data==x) //相同结点不能重复插入{printf("data already exist! \n");return;}else if(x<p->data)p=p->lchild;elsep=p->rchild;}if(x<q->data)q->lchild=s;elseq->rchild=s;}}void main() /*先生成二叉排序树*/{int i=1,x; //i记录结点个数,x存放结点值int sum;root=NULL; /*千万别忘了赋初值给root!*/printf("请输入数据,-9999表示输入结束\n");do{printf("please input data %d:",i);i++;scanf("%d",&x); /*从键盘采集数据,以-9999表示输入结束*/if(x==-9999){printf("\nNow output data value:\n");}elseinsert_data(x); /*调用插入数据元素的函数*/ }while(x!=-9999);printf(" \n叶节点个数=");sum=CountLeaf (root);printf("%d\n",sum);}。
C语言选择结构程序设计实验报告
![C语言选择结构程序设计实验报告](https://img.taocdn.com/s3/m/4f887509c4da50e2524de518964bcf84b9d52da4.png)
C语言选择结构程序设计实验报告
一、实验目的和要求
1.了解C语言表示逻辑量的方法。
2.正确使用逻辑运算符和逻辑表达式,掌握if语句和switch语句。
3.结合程序掌握一些简单算法,并学习调试程序。
二、实验内容和原理
1.有一函数:
x2+2x-6(x<0,x≠-3)
y=x2-5x+6(0≤x<10,x≠2,x≠3)
x2-x-15(x=-3,x=2,x=3,x≧10)
写一程序,用scanf函数输入x,输出y值。
2.分别用if语句和switch语句编程实现:给出一个百分制成绩,要求输出成绩等级A、B、C、D、E。
90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
3.输入4个整数,要求按由小到大顺序输出。
4.有三个整数a,b,c,由键盘输入,输出其中最大的数,请编写程序。
(用两种方法实现)
5.输入出租车类型和里程,计算打车的费用。
计算方式为:3公里以内10元;3公里以上0车型每公里1.5元,1车型每公里2元。
三、实验环境
1.硬件:PC机;
2.软件:Windows操作系统、VisualC++6.0,DEV-CPP。
四、算法描述及实验步骤
1、先用scanf函数输入,再用if语句的嵌套来计算该方程。
2、(1)用switch语句时,对输入的数据进行检查,在用score/10将其强制转换得到一个。
实验三 顺序结构程序设计实验报告
![实验三 顺序结构程序设计实验报告](https://img.taocdn.com/s3/m/aad05f7bf46527d3240ce04e.png)
实验三顺序结构程序设计实验报告一、实验目的1.掌握掌握赋值语句的使用方法。
2.各种类型数据的输入输出的方法,能正确使用各种格式转换符。
3.进一步掌握编写程序和调试程序的方法。
二、实验内容(源代码)1. sy3-(1)①#include<stdio.h>int main(){int a,b; //基本整型float d,e; //单精度浮点型char c1,c2; //字符型double f,g; //双精度浮点型long m,n; //长整型unsigned int p,q; //"unsiguld"改成"unsigned" 无符号整型a=61,b=62;c1='a';c2='b'; //'a''b'的"'"不能掉了d=3.56;e=-6.87; //d,e之间用";"隔开f=3157.890121;g=0.123456789;m=50000;n=-60000;p=32768;q=40000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e); //"""与"a"之间的","不能掉了,"\"不能写成"/"printf("f=%15.6f,g=%15.12f\nm=%1d,n=%1d\np=%u,q=%u\n",f,g,m,n,p,q); //f后的q改为g}③#include<stdio.h>int main(){int a,b; //基本整型float d,e; //单精度浮点型char c1,c2; //字符型double f,g; //双精度浮点型long m,n; //长整型unsigned int p,q; //"unsiguld"改成"unsigned" 无符号整型a=61,b=62;c1=a;c2=b; //c1,c2之间用";"隔开f=3157.890121;g=0.123456789;d=f;e=g;p=a=m=50000;q=b=n=-60000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e); //"""与"a"之间的","不能掉了,"\"不能写成"/"printf("f=%15.6f,g=%15.12f\nm=%1d,n=%1d\np=%u,q=%u\n",f,g,m,n,p,q); //f后的q改为g④#include<stdio.h>int main(){int a,b; //基本整型float d,e; //单精度浮点型char c1,c2; //字符型double f,g; //双精度浮点型long m,n; //长整型unsigned int p,q; //"unsiguld"改成"unsigned" 无符号整型a=61,b=62;c1=a;c2=b; //c1,c2之间用";"隔开f=3157.890121;g=0.123456789;d=f;e=g;p=a=m=50000;q=b=n=-60000;printf("a=%d,b=%d\nc1=%d,c2=%d\nd=%d,e=%d\n",sizeof(a),sizeof(b),sizeof(c1),size of(c2),sizeof(d),sizeof(e));printf("f=%d,g=%d\nm=%d,n=%d\np=%d,q=%d\n",sizeof(f),sizeof(g),sizeof(m),sizeof( n),sizeof(p),sizeof(q));}2. sy3-(2)#include<stdio.h>int main(){float h,r,c,s1,s2,v1,v2; //定义float pi=3.1415926; //赋值printf("圆半径r=,圆柱高h=:"); //提示scanf("%f,%f",&r,&h); //输入c=2*pi*r; //计算s1=pi*r*r; //"*"不可省略s2=4*s1;v1=4.0/3.0*s1*r;v2=s1*h;printf("圆周长:c=%6.2f\n",c); //输出printf("圆面积:s1=%6.2f\n",s1);printf("圆球表面积:s2=%6.2f\n",s2);printf("圆球体积:v1=%6.2f\n",v1);printf("圆柱体积:v2=%6.2f\n",v2);return 0;}3. sy3-(3)#include<stdio.h>#include<math.h> //不要忘了数学函数int main(){float p,r5,r3,r2,r1,r0,p1,p2,p3,p4,p5; //定义p=1000; //赋值printf("r5=,r3=,r2=,r1=,r0=:"); //提示scanf("%f,%f,%f,%f,%f",&r5,&r3,&r2,&r1,&r0); //输入p1=p*r5*5; //计算p2=p*(1+2*r2)*(1+3*r3)-p;p3=p*(1+3*r3)*(1+2*r2)-p;p4=p*pow(1+r1,5)-p;p5=p*pow(1+r0/4,20)-p;printf("方案1的利息:p1=%f\n",p1); //输出printf("方案2的利息:p2=%f\n",p2);printf("方案3的利息:p3=%f\n",p3);printf("方案4的利息:p4=%f\n",p4);printf("方案5的利息:p5=%f\n",p5);return 0;}4. sy3-(4)①#include<stdio.h>int main(){char c1='C',c2='h',c3='i',c4='n',c5='a';//定义与赋值c1=c1+4;//计算c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;printf("用printf语句输出结果为:");//提示printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);//输出c1,c2之间的","不可省略printf("用putchar语句输出结果为:");//提示putchar(c1);//输出putchar(c2);putchar(c3);putchar(c4);putchar(c5);printf("\n");//换行不要省略return 0;}②#include<stdio.h>int main(){char c1='T',c2='o',c3='d',c4='a',c5='y';//定义与赋值c1=c1-22;//计算c2=c2-22;c3=c3-22;c4=c4-22;c5=c5-22;printf("用printf语句输出结果为:");//提示printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);//输出c1,c2之间的","不可省略printf("用putchar语句输出结果为:");//提示putchar(c1);//输出putchar(c2);putchar(c3);putchar(c4);putchar(c5);printf("\n");//换行不要省略return 0;}③#include<stdio.h>int main(){char c1='T',c2='o',c3='d',c4='a',c5='y';//定义与赋值c1=c1-4;//计算c2=c2-4;c3=c3-4;c4=c4-4;c5=c5-4;printf("用printf语句输出结果为:");//提示printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);//输出c1,c2之间的","不可省略printf("用putchar语句输出结果为:");//提示putchar(c1);//输出putchar(c2);putchar(c3);putchar(c4);putchar(c5);printf("\n");//换行不要省略return 0;}三、实验体会1.初步掌握了顺序程序设计编程的基本方法:程序框图或N-S图→定义→赋值→(提示)输入→计算→(提示)输出。
c语言顺序结构程序设计实验报告
![c语言顺序结构程序设计实验报告](https://img.taocdn.com/s3/m/abcb09286d175f0e7cd184254b35eefdc8d3152e.png)
c语言顺序结构程序设计实验报告C语言是一门非常重要的编程语言,它的应用广泛,特别是在嵌入式系统和操作系统开发中。
熟练掌握C语言的顺序结构程序设计是学习编程的基础,本文将围绕这个主题展开。
一、引言顺序结构是C语言中最基本的程序设计结构之一,也是最常用的程序设计结构之一。
顺序结构程序由一系列语句按照顺序执行,没有分支和循环的控制结构。
下面将从变量声明、输入输出、算术运算和函数调用等方面介绍顺序结构程序的设计与实现。
二、变量声明在C语言中,使用变量来存储数据。
在顺序结构程序中,我们首先需要声明变量。
变量的声明包括变量的类型和名称。
例如,可以声明一个整型变量a和一个浮点型变量b,代码如下:int a;float b;三、输入输出在顺序结构程序中,我们经常需要从用户输入数据,并将计算结果输出给用户。
C语言提供了丰富的输入输出函数来实现这一功能。
例如,可以使用scanf函数从用户输入一个整数,并使用printf函数输出这个整数,代码如下:int num;printf("请输入一个整数:");scanf("%d", &num);printf("您输入的整数是:%d\n", num);四、算术运算顺序结构程序中经常需要进行各种算术运算。
C语言提供了一系列算术运算符,如加法、减法、乘法、除法等,可以用来进行各种算术运算。
例如,可以计算两个整数的和,并将结果输出给用户,代码如下:int a = 10;int b = 20;int sum = a + b;printf("两个整数的和是:%d\n", sum);五、函数调用在顺序结构程序中,我们可以使用函数来封装一些常用的操作,以便重复使用。
C语言提供了函数机制,可以定义和调用函数。
例如,可以定义一个函数来计算两个整数的乘积,并在主函数中调用这个函数,代码如下:int multiply(int a, int b){return a * b;}int main(){int a = 10;int b = 20;int result = multiply(a, b);printf("两个整数的乘积是:%d\n", result);return 0;}六、总结顺序结构程序设计是C语言的基础,掌握了顺序结构程序设计,才能进一步学习和理解分支结构和循环结构。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C语言程序设计》实验报告
实验序号:3实验项目名称:顺序、选择结构
网工学号姓名专业、班级
实验地点316 指导教师林老师实验时间11.1
一、实验目的及要求
1.掌握正确使用逻辑运算符和逻辑表达式表示逻辑判断;
2.熟练掌握用if语句编写选择结构的程序;
3.掌握switch语句的正确使用;
4.初步了解调试程序的一般方法。
二、实验设备(环境)及要求
使用Visual C++ 6.0;windows系列操作系统的环境。
三、实验内容与步骤
1.输入一个华氏温度f,要求输出摄氏温度c。
公式为c=5/9(f-32)。
输出要求有文字说明,取2位小数。
【算法提示】
1)定义实变量c,f
2)提示输入"Please enter f:"
3)读入f
4)根据公式计算c
5)打印两位精度的结果。
测试结果:
华氏温度f 摄氏温度c
100.25
0.5
23.78
2.有一函数
x (x<1)
y= 2x-1 (1<=x<10)
3x-11 (x>=10)
用scanf函输入x的值,求y值。
【算法提示】
1)定义实变量x,y
2)提示输入"Please enter x:"
3)读入x
4)判断x所在的区间,对应出y的计算公式并求值(进一步细化)
5)打印结果。
运行结构截图:
\
3.从键盘上输入一个正整数,判断这个数能否同时被3和5整除;
运行结构截图:
4.设计算法输入一个四位正整数,将它们倒排,例如输入1234,输出4321。
(提示:分别应用/ 求整数部分,%求余数部分。
例如7/5=1,7%5=2)。
运行结构截图:
5.某公司的招聘条件如下:①Experience with C②bachelor degree③less than 30 要求屏幕输出如下:
根据应聘者输入数据逐步提问,如应聘者输入n,则提示
应聘者全满足则输出
要求必须使用switch,必须考虑用户输入大写Y或者N。
6.假设手机有两种收费方式,第一种是每分钟0.6元,无月租费;另一种是每分钟0.4元再收50元月租费,输入一个月打电话的时间(分钟),判断那一种更省钱。
运行结构截图:
7.税收问题。
假设某国家收税是分段计费,标准如下:在1万元以上部分收税20%;5000-10000元部分收税10%;1000-5000元部分收税5%;1000元以下部分免税。
根据输入的金额计算应缴纳的税金。
如:某人收入是12000元,则应缴纳的税金为4000*5%+5000*10%+2000*20%=1100元【实验提示】
①给你的变量起个好名字,不要什么变量都用a,b,c…等,变量最好用英文单词或单词的缩写命名,变量名字要体现变量在程序的含义和作用。
要有必要的注释!!,养成这一良好的习惯很重要,请记住,“代码只被书写一次,而它被修改和阅读的次数可能是无限的”
②本程序可以使用if语句和switch语句分别实现。
运行结构截图:
四、分析与讨论
1)1.#include<stdio.h>
2)void main()
3){
4)float c1,c2,c3,f1,f2,f3;
5)printf("\nplease enter three f\n");
6)scanf("%f\n%f\n%f",&f1,&f2,&f3);
7)c1=(f1-32)*5/9;
8)c2=(f2-32)*5/9;
9)c3=(f3-32)*5/9;
10)printf("\nhua shi wen du fenbie wei :\n%.2f1\n%.2f\n%.2f",c1,c2,c3);
11)}
2.
3.
4.#include<stdio.h>
void main()
{
int a,b,c,d;
printf("\n请输入一个四位数:\n");
scanf("%1d%1d%1d%1d",&a,&b,&c,&d);
printf("%d%d%d%d\n",d,c,b,a);
}
5.#include<stdio.h>
void main()
{
char c;
printf("Do you have Experience with C? press N/Y \n");
c=getchar();
switch(c)
{
case 'n':printf("\nWe are sorry to tell you ...\n");break;
case 'N':printf("\nWe are sorry to tell you ...\n");break;
case 'y':printf("\nWelcome join us! \n");break;
case 'Y':printf("\nWelcome join us!\n ");break;
default:printf("Input invalid score\n\n");
}
}
6.#include<stdio.h>
void main()
{
float time,cost1,cost2;
printf("请输入你一个月打电话的时间(分钟):");
scanf("%f",&time);
cost1=0.6*time;
cost2=0.4*time+50;
if(cost1<cost2)
{
printf("第一种话费%.2f,第二种话费%.2f,比较后第一中比较省钱\n",cost1,cost2);
}
else printf("第一种话费%.2f,第二种话费%.2f,比较后第二中比较省钱\n",cost1,cost2); }
7.#include<stdio.h>
void main()
{
float wage,tax1,tax2,tax3,tax4;
printf("请输入工资:");
scanf("%f",&wage);
tax2=(wage-1000)*0.05;
tax3=4000*0.005+(wage-5000);
tax4=4000*0.05+5000*0.1+(wage-10000)*0.2;
if(wage<=1000)
{
printf("该同志的工资%F低于标准免税\n",wage);
}
else
if(wage>1000&&wage<=5000)
{
printf("该同志工资%f本月应该缴纳税收%.2f\n",wage,tax2);
}
else
if(wage>5000&&wage<=10000)
{
printf("该同志工资%f本月应该缴纳税收%.2f\n",wage,tax3);
}
else printf("该同志工资%f本月应该缴纳税收%.2f\n",wage,tax4);
}。