C语言编程实验报告(三)
- 格式:doc
- 大小:41.00 KB
- 文档页数:3
C语⾔实验报告三实验项⽬:4.3.1if语句的应⽤;4.3.2switch-case的应⽤;4.3.3switch-case嵌套if语句的应⽤;4.3.4switch-case结构嵌套的应⽤;4.3.5分析程序___________________________________________姓名:戴智琴__________实验地点:家________实验时间__2020.3.29______⼀、实验⽬的与要求1、掌握C语⾔逻辑值的表达⽅法(0代表“假”,1代表"真")2、学会正确地使⽤关系式和逻辑表达式。
3、掌握各种形式的i语句语法和使⽤⽅法。
if语句中if和else的匹配关系,以及if语句的嵌套。
4、熟练掌握switch语句的语法和使⽤⽅法,注意在switch语句中break语句的⽤法及switch语句的嵌套。
⼆、实验内容1、实验练习:4.3.11问题的简单描述:输⼊箱⼦的长宽⾼,输出判断箱⼦是正⽅形还是长⽅形。
2实验代码:#include<stdio.h>int main(){int l,w,h;printf("请输⼊箱⼦的长,宽,⾼:\n");scanf("%d%d%d",&l,&w,&h);if((l==w)&&(l==h)&&(w==h))/*如果长,宽,⾼相等,则为正⽅体*/printf("该箱⼦是正⽅体。
\n");elseprintf("该箱⼦是长⽅体。
\n");return 0;}3、问题分析:需要注意区分等号“==”和赋值“=”2、实验练习:4.3.2 switch-case1问题的简单描述:需要进⾏注释才能看懂代码2实验代码:#include<stdio.h>main(){int a,b,c,d,e,temp;/*a,b,分别为打印纸,墨盒的单价,c,d,e分别是购买的数量*/double x,y,z;/*x,y,z,分别为光盘的单价,实际付款数,应付款数*/printf("请输⼊打印纸,墨盒,光盘的数量:\n");scanf("%d,%d,%d",&c,&d,&e);a=18,b=132,x=4.5;y=a*c+b*d+x*e;switch(temp){case0:z=(a*c+b*d+x*e);break;case1:z=0.95*(a*c+b*d+x*e);break;case2:z=0.94*(a*c+b*d+x*e);break;case3:z=0.93*(a*c+b*d+x*e);break;case4:z=0.92*(a*c+b*d+x*e);break;case5:z=0.90*(a*c+b*d+x*e);break;default:z=0.90*(a*c+b*d+x*e);break;}printf("应付款数:%.2f",z);}3问题分析:实际折扣问题与使⽤switch语句3.实验练习:4.3.3问题描述:任意输⼊某⼀年⽉,输出该⽉的天数。
C语言实验报告(三)华北水院高级语言程序设计(c语言)实验报告2022-2022学年第二学期2022年级专业班级:学号:姓名:一、实验题目:循环结构程序设计二、实验目的:(略)三、实验内容1.程序验证(略)2。
程序设计1)找出100-900之间的无暇素数。
所谓无暇素数是指本身为素数,且其逆序数也是素数的数。
例如:113是一个素数,311也是一个素数,113就是无暇素数。
源代码:运行结果:intbsingle100_u900(inTV)/*这是一个用户定义的函数,用于判断它是否是介于100和900之间的素数*/{inti;如果(v%2);elsereturn0;for(i=3;i<=v/2;i+=2)if(v%i);elsereturn0;return1;}voidmain(){inta,b,c,d,e,w;对于(a=101;a<=900;a+=2){c=a/100;d=a/10;e=a;w=100*e+10*d+c;if(bsingle100_900(a)&&bsingle100_900(w))printf(\}}2)编程:用迭代法求一个数的平方根。
平方根的迭代公式如下:xn+1=(xn+A/xn)/2;设置x0=A/2;当迭代相邻两项差的绝对值小于10-5时,迭代结束。
源代码:运行结果:#include#includeintmain(){doublex1,x2,a;intf;Printf(\请输入a:\scanf(\X1=a/2;x2=0;F=0;while(1){x1=(x1+a/x1)/2;if(f)break;如果(abs(x1-x2)<1e-5)f=1;x2=x1;}printf(\}华北水利学院高级语言程序设计(C语言)实验报告2021--2021学年第二学期2021级专业班级:学号:姓名:3)写一个问答游戏。
计算机在10到100之间进行四次运算,每个问题得10分,用户给出答案。
实验课程名称:C语言程序设计实验日期:2023年4月10日实验地点:计算机实验室实验教师:张三实验小组:四组一、实验目的1. 熟悉C语言的基本语法和编程环境。
2. 掌握C语言的基本数据类型、运算符和表达式。
3. 学会使用C语言的函数和结构体。
4. 培养良好的编程习惯和问题解决能力。
二、实验内容本次实验主要涉及以下内容:1. C语言基本语法和编程环境的使用。
2. 基本数据类型、运算符和表达式的运用。
3. 函数的定义、调用和递归。
4. 结构体的定义和使用。
5. 程序调试和错误处理。
三、实验步骤1. 熟悉C语言编程环境(1)打开Visual Studio或Code::Blocks等C语言编程环境。
(2)创建一个新的C语言项目,并设置好编译器和链接器。
(3)编写第一个简单的C语言程序,如“Hello World”程序。
2. 学习基本数据类型、运算符和表达式(1)学习C语言的基本数据类型,如int、float、char等。
(2)掌握C语言的运算符,包括算术运算符、关系运算符、逻辑运算符等。
(3)编写一个简单的计算器程序,实现加减乘除运算。
3. 学习函数的定义、调用和递归(1)学习函数的定义和调用方法。
(2)掌握递归函数的概念和实现。
(3)编写一个递归计算阶乘的程序。
4. 学习结构体的定义和使用(1)学习结构体的定义方法。
(2)掌握结构体变量的创建和使用。
(3)编写一个使用结构体的学生信息管理系统。
5. 程序调试和错误处理(1)学习程序调试的方法和技巧。
(2)掌握错误处理的基本方法。
(3)调试之前编写的程序,修复错误。
四、实验结果1. 成功编写并运行了“Hello World”程序。
2. 实现了一个简单的计算器程序,能够进行加减乘除运算。
3. 编写了一个递归计算阶乘的程序,并成功运行。
4. 创建了一个学生信息管理系统,能够添加、删除和查询学生信息。
5. 通过调试,修复了之前编写的程序中的错误。
五、实验总结通过本次实验,我对C语言编程有了更深入的了解,掌握了以下知识点:1. C语言的基本语法和编程环境。
学生实验报告实验课名称:数组应用实验项目名称:成绩管理系统专业名称:交通建设与装备班级:一班组号:第三组学生姓名:李博,焦云静,王阳坤,乔一恒,贾保垒,陈思,刘成,韩道森教师姓名:卢江2013年 4 月14 日实验日期:2013 年 4 月14 日实验室名称:明远2301五.源程序:#include <stdio.h>main(){int a[10],sum,i,j,max,min,b=10,t;float ave;printf("请输入10个学生的成绩:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(sum=0,i=0;i<10;i++)sum=sum+a[i];ave=sum/b;printf("平均分为:%.2f\n",ave);printf("低于平均分的成绩为:\n");for(i=0;i<10;i++)if(a[i]<ave)printf("%d,",a[i]);printf("\n");for(max=a[0],i=1;i<10;i++)if(a[i]>max)max=a[i];printf("max=%d",max);printf("\n");for(min=a[0],i=1;i<10;i++)if(a[i]<min)} min=a[i];printf("min=%d",min);printf("\n");for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(a[j]<a[j+1]){t=a[j+1];a[j+1]=a[j];a[j]=t;}printf("成绩按降序排列为:\n");for(i=0;i<10;i++)printf("%d ",a[i]);printf("\n");八.实小组人员名单及分工:版块一、二、三:李博、焦云静版块四:乔一恒、刘成、陈思、韩道森版块五:王阳坤版块六:李博版块七、八:李博、贾保垒,焦云静。
实验一C程序设计入门1.编程输出‚我的信息‛;#include <stdio.h>main(){printf("My Information:\n");printf("姓名:李坤\n性别:女\n专业名称:通信工程\n课程名称:高级语言程序设计实验\n");}2.编程:定义一个名为all的整型变量并为其赋值100。
分别计算all 的两倍及其平方,用文字什么的输出结果;#include <stdio.h>main(){int all=100;int x,y;x=2*all;y=all*all;printf("all的两倍是:%d\n all的平方是:%d\n",x,y);}3.编程求以下表达式的值;#include <stdio.h>#include <math.h>main(){float x;x=23+(pow(16,2)-15)/(9+14);printf("x=%.4f\n",x);}4.编程计算以下表达式的值(要求:分别定义一个int和float类型的变量,计算的结果存入该二变量并输出,分析结果)#include <stdio.h>main(){int x;float y;x=3/2+4/3+5/4+6/5;y=3.0/2+4.0/3+5.0/4+6.0/5;printf("x=%d\ny=%.4f\n",x,y);}实验二数据类型、常量变量及顺序结构程序设计1.输入两个人的身高,计算并输出他们的平均身高。
(结果保留两位小数)#include <stdio.h>main(){float x,a,b;printf("Input the height:");scanf("%f%f",&a,&b);x=(a+b)/2;printf("The average height is:%.2f\n",x);}2。
宁夏师范学院数学与计算机科学学院《高级语言程序设计》实验报告实验序号:3实验项目名称:运算符与表达式学号姓名专业、班级12级数应(2)班实验地点指导教师郑利珍时间一、实验目的及要求1、理解常用运算符的意义。
2、掌握C语言表达式的运算规则。
二、实验设备(环境)及要求硬件:PC(PII以上,128M以上内存);软件:Windows XP操作系统、Visual C++ 6.0。
三、实验内容、步骤及结果1、先分析下面的3个表达式的值,再设计测试程序,进行比较和分析int a=5,b=7,c=100,d,e,f;d=a/b*c;e=a*c/b;f=c/b*a;2、分析以下程序,试比较x++与++x之间的区别。
int main(void){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、编写测试程序对这些表达式的值进行比较,并使各表达式在相同的初始条件下执行。
b+a+++ab+(a++)+a)b+a+(++a)b+a+++a++4、分析下列表达式,若有错,改正。
并编写测试程序对这些表达式的值进行比较,各表达式在相同的初始条件下执行。
i,ji+1,j+1i++,j++++i,++ji+ + + + +j四、分析与讨论1、整数除存在什么危险?如何避免这种危险?2、分析a++与++a之间的区别。
3、分析++和—运算符的使用限制。
五、教师评语1.按时完成实验;2.实验内容和实验过程记录完整;3.回答问题完整、正确;4.有关于实验的心得;5.实验报告的撰写认真、报告格式符合要求。
签名:郑利珍日期:2013年月日成绩100。
实验三循环结构程序设计(参考答案)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,输入一个整数,要求将该整数上各位数字是偶数的数取出,并按原来从高位到低位的顺序组成一个新数。
实验十 参考答案(指针)三、实验内容( 按要求完善或设计以下程序,并调试分析运行结果)1. 程序填空题 给定程序BLACK10-1.C 中,函数fun 的功能是:将形参n 所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n 传回所指变量。
例如,输入一个数:27638496,新的数:为739。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
【解题思路】第一处:t 是通过取模的方式来得到*n 的个位数字,所以应填:10。
第二处:判断是否是奇数,所以应填:0。
第三处:最后通形参n 来返回新数x ,所以应填:x 。
2. 程序改错题 给定程序MODI10-1.C 中函数fun 的功能是: 计算n 的5次方的值(规定n 的值大于2、小于8),通过形参指针传回主函数;并计算该值的个位、十位、百位上数字之和作为函数值返回。
例如,7的5次方是16807, 其低3位数的和值是15。
【解题思路】第一处:变量d 的初始值应为1。
第二处:整除的符号是 /。
3. 程序设计题 请编写函数fun ,它的功能是:求出能整除形参x 且不是偶数的各整数,并按从小到大的顺序放在pp 所指的数组中,这些除数的个数通过形参n 返回。
例如,若 x 中的值为: 35,则有 4 个数符合要求,它们是: 1, 5, 7, 35。
【解题思路】本题是求出能整除形参x 且不是偶数的各整数,并按从小到大的顺序放在pp 所指的数组中,这些除数的个数通过形参n 返回。
【参考答案】void fun ( int x, int pp[], int *n ){ int i; *n=0;for(i=1; i <= x; i++)if((x % i== 0) && (i % 2)) pp[(*n)++]=i;}4. 程序填空题 给定程序中,函数fun 的功能是:找出N ×N 矩阵中每列元素中的最大值,并按顺序依次存放于形参b 所指的一维数组中。
C语言程序设计实验报告一、引言C语言程序设计是计算机科学与技术专业中的一门基础课程。
通过实验学习,我深入了解了C语言的基本语法和程序设计的思想,掌握了一定的编程能力。
本文将详细介绍我在C语言程序设计实验中所进行的实验项目、实验结果和实验心得。
二、实验项目1. 实验一:C语言程序设计基础在这个实验中,我编写了一个简单的C语言程序,实现了对用户输入的两个整数进行相加并输出结果的功能。
在程序设计中,我正确使用了C语言的基本语法,包括变量定义、输入输出函数的调用等。
2. 实验二:条件语句和循环结构这个实验要求我编写一个C语言程序,实现对用户输入的分数进行等级评定的功能。
根据用户输入的分数,程序将输出相应的等级,如优秀、良好、及格等。
为了实现这个功能,我灵活运用了条件语句和循环结构,使程序具有良好的交互性。
3. 实验三:数组和字符串在这个实验中,我学习了C语言中数组和字符串的使用方法,并编写了一个程序,实现了对一个整数数组的排序功能。
通过实验,我进一步掌握了数组的声明、初始化和遍历等操作,提高了我对C语言程序设计的理解。
4. 实验四:函数和指针实验四要求我编写一个C语言程序,实现对一个数组中的元素求和的功能。
在这个实验中,我了解了函数的定义和调用、指针的基本概念以及函数指针的使用。
通过编写程序,我加深了对函数和指针的理解,并提高了程序的运行效率。
三、实验结果通过以上实验项目的设计与实现,我得到了如下实验结果:1. 实验一的结果是可以正确进行数值相加并输出结果。
2. 实验二的结果是根据输入的分数得到相应的等级评定。
3. 实验三的结果是对输入的整数数组进行排序,并输出排序后的结果。
4. 实验四的结果是对数组中的元素进行求和,并输出求和结果。
四、实验心得通过整个实验过程,我深刻认识到了C语言程序设计的重要性和应用广泛性。
C语言不仅是其他高级编程语言的基础,也是培养程序设计思维和逻辑思维的重要工具。
通过实验,我不仅掌握了C语言的基础知识和编程技巧,还培养了自己解决问题和分析问题的能力。
3.2基础实验一、程序分析1.以下程序若输入’a’,则输入格式为:__c1=a____;运行结果为:___a,A↙_____。
#include<stdio.h>intmain( ){char c1,c2;scanf(“c1=%c”,&c1);c2=c1-32;printf(“%c,%c\n”,c1,c2);return 0;}2.以下程序如果使得a的值为2、b的值为3,则输入格式为:_a=2,b=3__;运行结果为:_2,3↙_。
#include<stdio.h>intmain( ){ int a,b;scanf(“a=%d,b=%d”,&a,&b);printf(“%d,%d\n”,a,b);return 0;}3.以下程序若输入12.3、7.6、1.1,则输入格式为:_12.3 7.6 1.1__;运行结果为:_aver=7.00___。
#include<stdio.h>intmain( ){ floata,b,c,d;scanf(“%f%f%f”,&a,&b,&c);d=(a+b+c)/3;printf(“aver=%.2f”,d);return 0;}二、程序填空1.输入一个四位整数,求各位数字之和(如1234,则结果为1+2+3+4=10)。
若输入3562,则运行结果为:___3+5+6+2=16↙____________。
#include <stdio.h>intmain( ){ int n,a,b,c,d,m;scanf(“%d”,&n);a=n%10;b=(n/10)%10;c=(n/100)%10;d=__n/1000________;m=__a+b+c+d________;printf(“%d+%d+%d+%d=%d\n ”, d,c,b,a,m);return 0;}2.给定一个华氏法表示的温度值,将其转换为摄氏法表示的温度,转换公式为则运行结果为:__f=64.00,c=17.78↙__。
C语言程序设计实验报告一、实验目的本次 C 语言程序设计实验的主要目的是通过实际编写和调试 C 语言程序,加深对 C 语言语法、数据类型、控制结构、数组、指针、函数等核心概念的理解和掌握,提高编程能力和问题解决能力。
二、实验环境本次实验使用的编程环境是 Visual Studio Code,编译器为 GCC。
操作系统为 Windows 10。
三、实验内容及步骤(一)简单数据类型与运算1、定义并初始化不同类型的变量,如整型、浮点型、字符型等。
2、进行基本的算术运算、关系运算和逻辑运算,并输出结果。
(二)控制结构1、编写使用 ifelse 语句进行条件判断的程序,根据不同的条件执行不同的操作。
2、运用 for 循环和 while 循环实现特定次数的重复操作,例如计算1 到 100 的和。
(三)数组1、定义并初始化一维数组和二维数组。
2、实现数组元素的遍历和操作,如查找最大值、最小值等。
(四)指针1、理解指针的概念,定义指针变量并进行赋值。
2、通过指针访问变量和数组元素。
(五)函数1、定义和调用具有不同参数类型和返回值类型的函数。
2、理解函数的参数传递机制,包括值传递和指针传递。
四、实验过程中的问题及解决方法(一)语法错误在编写程序的过程中,经常会出现语法错误,如遗漏分号、括号不匹配等。
通过仔细检查代码,对照 C 语言的语法规则,能够及时发现并修正这些错误。
(二)逻辑错误逻辑错误是比较难以发现和解决的问题。
例如,在循环中可能会出现错误的边界条件,导致结果不正确。
通过打印中间结果和逐步调试,能够帮助找出逻辑错误的所在,并进行修正。
(三)运行时错误运行时错误可能是由于内存访问越界、除数为零等原因引起的。
使用调试工具和异常处理机制,能够有效地处理运行时错误,保证程序的稳定性。
五、实验结果与分析(一)简单数据类型与运算通过实验,对不同数据类型的取值范围、精度以及运算规则有了更清晰的认识。
例如,整型数据在不同的平台上可能具有不同的取值范围,浮点型数据在进行运算时可能会存在精度损失。
实验3 逻辑结构程序设计一、实验目的1、了解C 语言表示逻辑量的方法(以0代表“假”,以非0代表“真” )。
2、学会正确使用逻辑运算符和逻辑表达式。
3、熟练掌握if 语句和switch 语句。
4、结合程序掌握一些简单的算法。
5、学习调试程序。
二、实验内容和步骤本实验要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。
1、改错题。
给定程序MODI1.C 的功能是:对于如下函数:用scanf 函数输入x 的值,求y 值。
/* MODI1.C */#include <stdio.h>void main(){int x, y;/***********found***********/scanf ("%d", &x);if ( x < 1 )y = x;/***********found***********/else if ( 1 <=x&& x < 10 )y = 2*x -1 ;elsey = 3*x -11; printf("y = %d\n", y ); }程序中有两处错误,错误都在提示行: /***********found***********/的下面一行。
请改正程序中的错误,使它能得出正确的结果。
注意:不要随意改动程序,不得增行或删行,也不得更改程序的结构!修改程序后,运行程序,输入x 的值(分别为x<1、1≤x<10、x ≥10三种情况,如0.5、8、15),检查输出的y 值是否正确。
⎪⎩⎪⎨⎧≥-<≤-<=)10(113)101(12)1(x x x x x xy2、从键盘输入某学生的考试成绩,要求输出成绩等级A、B、C、D、E。
学生的成绩可分成5个等级,90-100分为A级,80-89分为B级,70-79分为C级,60-69分为D级,0-59分为E级。
要求在输入负数时,给出错误提示。
c语言实验报告分析总结3篇c语言实验报告分析总结1在科技高度发展的今天,计算机在人们之中的作用越来越突出。
而c语言作为一种计算机的语言,我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。
在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。
在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。
由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。
包括了程序模块处理.简单界面程序.高级界面程序.程序的添加修改.用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。
上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。
对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。
学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。
因为学时所限,课程不能安排过多的上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。
为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。
课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:1.加深对课堂讲授内容的'理解课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。
然而要使用c语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。
实验三:选择结构程序设计一、实验方式:一人一机二、实验目的: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、实验分析。
上海开放大学
闵二分校《学生实验报告》记录表
姓名: 学号: 实验日期: 2014 年 5 月19 日
实验名称:实验三函数
使用主要设备:VC++6.0
实验目的:
1、熟练掌握函数的定义和调用;
2、理解形式参与和实际参数的传递;
3、了解函数的递归调用;
实验要求:
1、根据每个实验的具体要求,填写程序或编写完整程序,将运行结果截图,并粘贴到指定位置。
2、实验独立完成。
实验安排:
1、本实验时间为4学时。
2、实验结束后,须完成实验报告作为评分依据,它应包括实验名称,实验目的、实验内容、实验结果及实验体会等内容,以电子版形式上交(包括调试源程序)
实验考核:
1、实验成绩占总成绩的20%,本次成绩占总成绩的5%。
2、实验成绩以百分制记分。
本次实验共4题,每题25分。
3、实验成绩的评分标准为:(1)编写了程序源代码,但没调试程序,得50%;(2)编写了程序源代码,并调试了程序,但结果不完全正确,得70%;(3)编写了程序源代码,并调试了程序,结果正确,得为90%;(4)编写了程序源代码,调试了程序,结果正确,并撰写体会,得95%或更高。
实验题序号 2
实验题描述:
完成求一个数组中平均值的函数,并在主函数中调用该函数。
程序文本,请补充完整
#include <stdio.h>
本次实验的体会(可选):。
实验三循环控制实验课程名:高级语言程序设计(C)专业班级:学号:姓名:实验时间:实验地点:指导教师:一、实验目的和要求1. 熟练掌握用while语句、do while语句和for语句实现循环的方法。
2. 掌握在程序设计中用循的方法实现一些常用算法。
并进一步学习调试程序的方法。
二、实验内容1、任务名称程序c40101.c求1+…+100,填空,实现该功能。
(1、)源代码:#include<stdio.h>int main(){int s,i;s=0;for(i=1;i<=100;i++)s=s+i;printf("1+2+...+100=%d\n",s);return 0;}运行结果:(需要截图)(2、)源代码:#include<stdio.h>int main(){int s=0,i=1;while(i<=100){s+=i;i++;}printf("1+2+...+100=%d\n",s);return 0;}运行结果:运行结果分析:2、任务名称:分别运行这两个程序,若输入7,这两个程序的结果分别是多少?若输入12,这两个程序的结果又分别是多少?比较为什么会有这样的区别?(1、)源代码:#include <stdio.h>void main(){ int i,n,sum=0;scanf("%d",&i);n=i;while(i<=10){ sum+=i;i++;}printf("%d+...+10=%d\n",n,sum);}运行结果:(需要截图)(2、)源代码:#include <stdio.h>int main(){ int i,n,sum=0;scanf("%d",&i);n=i;do{ sum+=i;i++;} while(i<=10);printf("%d+...+10=%d\n",n,sum);return 0;}运行结果:运行结果分析:3、任务名称:下面程序,若输入12345,分析输出结果是多少?源代码:#include <stdio.h>void main( ){ long data;scanf("%ld",&data);while(data){ printf("%ld,",data%10);data=data/10;}}运行结果:(需要截图)运行结果分析:4、任务名称:程序c40104.c 实现求Fibonacci 数列的前n 个数。
华北水院高级语言程序设计(C语言)实验报告(三)
2012--2013学年第二学期
2012级专业:学号:姓名:………………………………………………………………………………………………
一、实验题目:循环结构程序设计
二、实验目的:(略)
三、实验内容
1. 程序验证(略)
2.程序设计
1) 找出100-900之间的无暇素数。
所谓无暇素数是指本身为素数,且其逆序数也是素数的数。
例如:113是一个素数,311也是一个素数,113就是无暇素数。
源代码:运行结果:
#include "stdafx.h"
#include <stdio.h>
#include <math.h>
void main()
{
int n,m,i,j,a,b,c,k;
int flag,count=0;
for(n=101;n<=109;n+=2)
{
a=n%100;
b=(n%100)/10;
c=(n%100)%10;
m=c*100+b*10+c;
flag=1;
k=(int)sqrt(n);
for(i=2;i<=k;i++)
if(n%i==0&&m%i==0)
{
flag=0;
break;
}
if(flag)
{
count++;
printf("%5d",n);
if(count%4==0)
printf("\n");
}
}
}
2) 编程:用迭代法求某数a的平方根。
平方根的迭代公式如下:
x n+1=(x n+a/x n)/2; 设x0=a/2;
当迭代相邻两项差的绝对值小于10-5时,迭代结束。
源代码:运行结果:#include "stdafx.h"
#include<stdio.h>
#include<math.h>
void main()
{
double a,b,m,n,t;
printf("请输入一个数");
scanf("%lf",&a);
m=(a/2+a/(a/2));
while(t>=1e-5)
{
n=m;
m=(n+a/n)/2;
t=n-m;
}
printf("%lf",t);
}。