厦门理工学院C语言报告实验3顺序、选择结构
- 格式:doc
- 大小:1.52 MB
- 文档页数:6
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语言程序设计期末试题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程序设计》选择结构程序设计实验报告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++实验项目顺序结构,选择结构编程与调试一、实验目的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语言课程设计一、课程目标知识目标: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语言中的三种基本结构:顺序结构、选择结构和循环结构,并学会运用这三种结构进行编程。
实验内容:
1. 顺序结构
顺序结构是指按照一定的顺序逐步执行程序中的语句,也就是从程序的开始处到结束处,所有的语句都是按照顺序执行的。
以下是一段简单的顺序结构示例代码:
#include <stdio.h>
在该示例代码中,程序首先读入两个整数a和b,然后将它们相加并将结果存储在变量c中,最后输出计算结果。
2. 选择结构
选择结构是根据条件的真假,选择执行的语句,在C语言中,if语句是最常见的选择结构,也是最基本的控制语句,它可以根据条件的真假选择执行不同的语句块。
在该示例代码中,程序首先读入一个整数分数,然后使用if语句判断分数是否大于等于60,如果是,则输出“及格了”,否则输出“不及格”。
3. 循环结构
循环结构是程序重复执行一段程序代码的结构,C语言中,while语句、do-while语句和for语句都可以实现循环结构。
在该示例代码中,程序使用while语句实现了一个循环,从1开始依次输出1-10这十个数字。
实验结果分析:。
实验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语言中选择结构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语句会导致程序出错,需要仔细检查。
一、实验的目的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语言程序设计》实验报告
实验序号: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);
}。