文档库 最新最全的文档下载
当前位置:文档库 › c++实验三实验报告

c++实验三实验报告

c++实验三实验报告
c++实验三实验报告

实验三实验报告

1.实验目的及要求

(1)掌握运算符重载的定义及实现。

(2)掌握具有运算符重载的应用。

2.实验设备

计算机、Microsoft Visual C++

3.实验内容

(1)将一个16 位二进制数表示成0 和1 的字符序列,即用一个字符数组来存放这个二

进制数。在这个类中设置两个构造函数,一个是传递整数参数的,另一个是传递字符串参数的。因为用户在创建对象时传递的二进制数,可能是以整数形式给出,也可能是以数字串形式给出,系统应该都能接受。另外有一个类型转换函数int(),用来将类类型向整型转换。程

序中的两个重载运算符“+”,“-”,用来完成两个二进制数之间的加减运算。

#include "iostream.h"

#include "string.h"

#include "conio.h"

class binary { //定义二进制类

char bits[16]; //二进制字模数组

public:

binary(char *); //字符串参数构造函数

binary(int); //整型参数构造函数

friend binary operator +(binary,binary); //重载“+”

friend binary operator -(binary,binary); //重载“-”

operator int(); //类类型转换函数

void print();

};

binary::binary(char *num)

{

int isrc=strlen(num)-1; //字符串长度-1 为最低位

int idest=15;

while(isrc>=0 && idest>=0)

bits[idest--]=(num[isrc--]=='0'?'0':'1'); // 逐位赋值

while(idest>=0) bits[idest--]='0'; // 空高位值0

}

binary::binary(int num)

{

for(int i=15; i>=0;i--)

{ bits[i]=( (1) ); //求余数

num>>=1; //移位,相当于整除2

}

}

binary operator +(binary n1, binary n2)

{

unsigned carry=0;

unsigned value;

binary res="0";

for(int i=15; i>=0; i--)

{

value=(n1.bits[i]=='0'?0:1)+( (2) )+carry;

res.bits[i]=(value%2==0?'0':'1');

carry=value>>1;

}

return res;

}

binary operator -(binary n1, binary n2)

{

unsigned borrow=0;

int value;

binary res="0";

for(int i=15; i>=0; i--)

{

value=(n1.bits[i]=='0'?0:1)-(n2.bits[i]=='0'?0:1)+borrow; res.bits[i]=(value==-1||value==1?'1':'0');

borrow=(value==-1||borrow!=0&&(value==0||value==1)?1:0); }

return res;

}

binary::operator int()

{

unsigned value=0;

for(int i=0; i<=15; i++)

value=( (3) )+(bits[i]=='0'?0:1);

return value;

}

void binary::print()

{

char str[17];

strncpy(str,bits,16);

str[16]='\0';

cout<

}

main()

{

binary n1="1011";

binary n2=int(n1)+15;

binary n3=n1-binary(7);

n1.print();

n2.print();

n3.print();

cout<

cout<

cout<

cout<

getch();

return 1;

}

[基本要求]

? 阅读下列程序,根据题意要求在处填上合适的内容完成程序。

? 上机录入、调试上面程序。

运行程序,记录并分析运行结果是否正确。

(2)编写一个集合类,重载+(并集)、-(差集)、*(交集)、<<(输出)、>>(输入)等函数。

4.解答:

1.(1)(num%2)+'0'

(2)n2.bits[i]=='0'?0:1

(3)value*2

2.#include

#include

using namespace std;

class A

{

public:

void getdata()//输入数组元素

{ cout<<"请输入集合中的元素:";

gets(data);

}

void print( )//输出数组元素

{

puts(data);

}

A operator +(A s1) //重载"+"实现字符串的并集运算

{

A temp;

count=strlen(data);

s1.count=strlen(s1.data);

int i=0,j=0,k=0,x=0;

for(i=0;i

{

temp.data[x]=data[i];

x++;

}

for(j=0;j

{

k=0;

for(i=0;i

{

if(s1.data[j]==data[i])

break;

else if(s1.data[j]!=data[i])

k++;

if(k==count)

{

temp.data[x]=s1.data[j];

x++;

}

}

}

temp.data[x]='/0';

return temp;

}

A operator *(A s1) //重载“*”实现字符串的交集运算

{

A temp;

count=strlen(data);

s1.count=strlen(s1.data);

int i=0,j=0,x=0;

for(i=0;i

{

for(j=0;j

{

if(data[i]==s1.data[j])

{

temp.data[x]=data[i];

x++;

}

}

}

temp.data[x]='/0';

return temp;

}

A operator -(A s1) //重载“-”实现字符串的差集运算

{

A temp;

count=strlen(data);

s1.count=strlen(s1.data);

int i=0,j=0,k=0;

static int x=0;

for(i=0;i

{ k=0;

for(j=0;j

{

if(data[i]==s1.data[j])

break;

else if(data[i]!=s1.data[j]) k++;

if(k==s1.count)

{

temp.data[x]=data[i];

x++;

}

}

}

temp.data[x]='/0';

return temp;

}

private:

char data[100]; int count;

};

void main()

{

A s1,s2,s3,s4;

s1.getdata();

s2.getdata();

s3.getdata();

cout<<"并集:";

s4=s1+s2+s3;

s4.print();

cout<<"交集:";

s4=s1*s2*s3;

s4.print();

cout<<"差集:";

s4=s1-s2;

s4.print();

}

5.代码测试:

报告者:林铭霞

2012/4/25

c语言实验报告 ()

丽水学院计算机实验报告

丽水学院计算机实验报告 一、实验目的 1.熟悉Visual C++和C-Free等集成环境,掌握运行一个C程序的基本步骤,包括编辑、编译、连接和运行。 2.掌握算术表达式和赋值表达式的使用。 3.掌握基本输入、输出函数的使用。 4.能够编程实现简单的数据处理。 二、实验环境 硬件:Pentium以上的计算机。 软件:Windows XP操作系统、Visual C++和C-Free等集成环境。 三、实验内容和结果 1.编程题1 在屏幕上显示一个短句“What is a computer?” 思考: (1)如何在屏幕上显示你自己的学号,姓名和班级? (2)如何在屏幕上显示数字、英文字母和汉字等信息?例如:“你在机房吗?” 编程题1源程序: #include<> void main() { printf("What is a computer?\n");

} 程序运行结果: What is a computer? 思考题(1): #include<> void main() { printf(",小王,班级\n"); } 思考题(2): #include<> void main() { printf("英文字母abcdefgABCDEFG\n"); printf("汉字:哇哈哈啊哈和\n"); } 2.编程题2 在屏幕上显示下列图形。 * * * * * * * * * *

思考:如何在屏幕上显示下列图形? A A A A 编程题2源程序: #include<> void main() { int i,j; for(j=1;j<5;j++) { for(i=5;i>j;i--) printf("*"); printf("\n"); } } 程序运行结果: * * * * * * * * * * 思考题:

C语言实验报告3

实验报告 实验名称:最简单的C程序设计——顺序程序设计成绩: 实验日期: 2011 年 10 月 24 日实验报告日期: 2011 年 10 月24 日 实验者:桂婷 一、实验目的 1、掌握C语言中使用最多的一种语句——赋值语句的使用方法。 2、掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。 3、进一步掌握编写程序和调试程序的方法。 二、实验内容 1、输入程序并运行结果。 2、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。编程序,用scanf输入数据,输出计算结果/。 3、计算存款利息。 有1000元,想存5年,可探子以下5种办法存: (1)一次存5年期; (2)先存2年期,到期后将本息再存3年期; (3)先存3年期,到期后将本息再存2年期; (4)存1年期,到期后将本息存再存1年期,连续存5次; (5)存活期存款。活期利息每一季度结算一次。 三、实验步骤: 1、

总结:1、变量在定义时就赋了初值。 2、两次的printf语句输出都指定了要输出数据的长度和小数点。2、 总结:1、程序在定义时只对部分变量赋了初值,这是允许的。 2、在计算时,乘号是用*表示,不能省略。 3、同样,在输出时指定了输出格式,长度,小数点位数。 3、

总结:1、用scanf语句输入数据,要与指定的格式一样。 2、程序用到了数学公式,调用“include ” 4、实验出现的问题、实验结果分析 1、程序在运行时是自上而下同,自左向右的。运到调用函数则会跳 转,但调用完了仍然回到主函数中。 2、printf语句中的常量是按原样输出的。 3、注意赋值语句的使用。 五、实验小结和思考 1、如果在程序2中不指定输出的长度和小数位数,看运行结果。 2、在程序3中不包含“include ”会怎样? 3、程序3若不给变量赋初值会出现什么情况。

关于计算机实验报告的参考范文

关于计算机实验报告的参考范文 篇一 一、实验题目 文件和文件夹的管理 二、实验目的 1.熟悉Windows XP的文件系统。 2.掌握资源管理器的使用方法。 3.熟练掌握在Windows XP资源管理器下,对文件(夹)的选择、新建、移动、复制、删除、重命名的操作方法。 三、实验内容 1.启动资源管理器并利用资源管理器浏览文件。 2.在D盘创建文件夹 3.在所创建文件夹中创建Word文件。 4.对所创建文件或文件夹执行复制、移动、重命名、删除、恢复、创建快捷方式及设置共享等操作。 四、实验步骤 (一)文件与文件夹管理 1.展开与折叠文件夹。右击开始,打开资源管理器,在左窗格中点击“+”展开,点击“—”折叠 2.改变文件显示方式。打开资源管理器/查看,选择缩略、列表,排列图标等

3.建立树状目录。在D盘空白处右击,选择新建/文件夹,输入经济贸易学院,依次在新建文件夹中建立经济类1103 4..创建Word并保存。打开开始/程序/word,输入内容。选择文件/另存为,查找D盘/经济贸易学院/1103班/王帅,单击保存 5.复制、移动文件夹 6.重命名、删除、恢复。右击文件夹,选择重命名,输入新名字;选择删除,删除文件 7.创建文件的快捷方式。右击王帅文件夹,选择发送到/桌面快捷方式 8.设置共享文件。右击王帅,选择属性/共享/在网络上共享这个文件/确定 9.显示扩展名。打开资源管理器/工具/文件夹选项/查看/高级设置,撤销隐藏已知文件的扩展名 (二)控制面板的设置。 1.设置显示属性。右击打开显示属性/桌面、屏幕保护程序 2.设置鼠标。打开控制面板/鼠标/按钮(调整滑块,感受速度)、指针 3.设置键盘。打开控制面板/键盘/速度(调整滑块,感受速度)、硬件 4.设置日期和时间打开控制面板/日期和时间

C语言实验报告参考答案 原

C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.编写程序: (1) a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 (2)a=160,b=46,c=18,d=170, 编写求(a+b)/(b-c)*(c-d)的程序。 答案: (1) #include 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); } (2) #include main() { int a,b,c,d; float x; a=160; b=46; c=18;

d=170; x=(a+b)/(b-c)*(c-d); printf("(a+b)/(b-c)*(c-d)=%f\n",x); } 3. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b 时,将0赋给c。(提示:用条件运算符) 答案: #include main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 2、(1) 编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7

C语言实验报告

《C语言程序设计实训1》报告 设计题目:基于数组的学生信息管理系统学院名称:信息科学技术学院

专业:计算机科学与技术 班级: 姓名:学号 指导教师: 提交日期: 2014年12月22日 一、实验内容 编写并调试程序,实现学校各专业班级学生信息的管理。10个学生的信息存储在文件中。在头文件中定义学生信息的结构体类型,包括: 学号、姓名、专业、班级、3门成绩;和符号常量N(学生数)。(同一班 级的学生可以属于不同的专业,同一专业的学生可以属于不同的班级)

二、实验要求 (1)main函数:以菜单形式将各项功能提供给用户,根据用户的选择, 调用相应的函数。 STU student[N]; 函数 #include "" void main() { int i,n,id,num,m,sub,corse;将从文件中读取10个人的信\n"); printf("\n2.您将从文件中随机读取第n(0<=n<=9)个学生的信息\n") printf("\n3.您将根据某一班级某一专业总分超过多少进行查找\n"); printf("\n4.您将求某一课程分数最高的学生序号的下标\n"); printf("\n5.您将对平均成绩由低到高进行简单选择排序法\n ");

printf("\n6.您将对某一个班的平均成绩由低到高进行起泡排序法\n"); printf("\n7.您将对某门专业的学生的某门课程成绩由低到高进行直接插入排序法\n"); printf("\n8.您将把学生信息存入文件\n"); scanf("%d",&id); getchar(); switch(id){ case 1: { printf("\n从文件中读取信息\n"); Input(students,sizeof(students)/sizeof(STU));Sort_select 函数 #include "" void Sort_select(STU * p) { int i,j,k; float sum,ave[N],t; STU tem; for(i=0;i

实验报告格式模板-供参考

实验名称:粉体真密度的测定 粉体真密度是粉体质量与其真体积之比值,其真体积不包括存在于粉体颗粒内部的封闭空洞。所以,测定粉体的真密度必须采用无孔材料。根据测定介质的不同,粉体真密度的主要测定方法可分为气体容积法和浸液法。 气体容积法是以气体取代液体测定试样所排出的体积。此法排除了浸液法对试样溶解的可能性,具有不损坏试样的优点。但测定时易受温度的影响,还需注意漏气问题。气体容积法又分为定容积法与不定容积法。 浸液法是将粉末浸入在易润湿颗粒表面的浸液中,测定其所排除液体的体积。此法必须真空脱气以完全排除气泡。真空脱气操作可采用加热(煮沸)法和减压法,或两法同时并用。浸液法主要有比重瓶法和悬吊法。其中,比重瓶法具有仪器简单、操作方便、结果可靠等优点,已成为目前应用较多的测定真密度的方法之一。因此,本实验采用比重瓶法。 一.实验目的 1. 了解粉体真密度的概念及其在科研与生产中的作用; 2. 掌握浸液法—比重瓶法测定粉末真密度的原理及方法; 3.通过实验方案设计,提高分析问题和解决问题的能力。 二.实验原理 比重瓶法测定粉体真密度基于“阿基米德原理”。将待测粉末浸入对其润湿而不溶解的浸液中,抽真空除气泡,求出粉末试样从已知容量的容器中排出已知密度的液体,就可计算所测粉末的真密度。真密度ρ计算式为: 式中:m 0—— 比重瓶的质重,g ; m s —— (比重瓶+粉体)的质重,g ; m sl —— (比重瓶+液体)的质重,g ; ρl —— 测定温度下浸液密度;g/cm 3; ρ—— 粉体的真密度,g/cm 3; 三.实验器材: l s sl l s m m m m m m ρρ) ()(00----=

2016年C语言实验报告

通知 各位老师: 本学期非计算机专业《计算机程序设计基础(C语言)》课实验报告要求: 1.统一用《武汉科技大学实验报告》本写。本学期交三次实验报告。 ①循环结构程序设计。 ②数组。 ③函数。 要求学生在完成以下实验报告,参考《C语言程序设计课程实验与题解》中的要求认真完成。 实验1 循环结构程序设计 一、实验目的 1.熟悉用while语句,do-while语句和for语句实现循环的方法。 2.掌握在程序设计中用循环的方法实现各种算法(如穷举、迭代、递推等)。 3.熟悉break语句和continue语句用法的不同之处。 二、实验内容 【例】以下程序,输出下三角形状的乘法九九表。 #include void main() { int i,j; for (i=1;i<=9;i++) /* 打印表头*/ printf(" %4d",i); printf("%c",'\n'); for (i=0;i<=50;i++) printf("%c",'_'); printf("%c",'\n'); for (i=1;i<=9;i++) /* 循环体执行一次,打印一行*/ { for (j=1;j<=i;j++) printf(" %4d",i*j); /* 循环体执行一次,打印一个数据*/ printf("%c",'\n'); /* 每行尾换行*/ } printf("%c",'\n'); } 输入并执行该程序,观察输出结果,试着修改程序打印上三角形状的乘法九九表。 三、编程序并上机调试运行。 1.打印出所有“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字的立方和正好等于该数本身。例如:153是一个“水仙花数”,因为153=13+53+33。 解题思路:根据题目要求只要分别求出一个三位数的个位、十位、百位上的数字,然后判断是否满足(某一三位数a=a的百位的立方+a的十位的立方+a的个位的立方)这个公式,满足这个三位数就是“水仙花数”。 2.李先生岁数的平方与他的夫人的岁数之和是1053,而他的夫人的岁数的平方与他

c语言实验报告

C语言实验报告 说明 1,所有程序均用VC6.0编译运行,文件名命名为姓名+日期,因为实验存在补做,所以并不是按照日期先后排列的。 2,为了使截图清晰,手动将运行窗口由“黑底白字”改为了“白底黑字”。 实验2 数据类型、运算符和表达式 一、实验目的: (1)掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值的方法。 (2)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。 (3)掌握C语言的输入和输出函数的使用 (4)进一步熟悉C程序的编辑、编译、连接和运行的过程。 三、程序调试与问题解决: (1)输人并运行下面的程序 #include void main() { char c1,c2; c1='a'; c2='b'; printf("%c %c\n",c1,c2); } ○1运行此程序。 ○2在上面printf语句的下面再增加一个printf语句。

printf("%d %d\n",c1,c2); 再运行,并分析结果。 输出结果如图,编译成功,无错误。 ○3将第3行改为 int c1,c2; 再运行,并分析结果。 ○4再将第4、5行改为 c1=a; c2=b; 再运行,并分析结果。 a,b没有定义,编译报错。 ○5再将第4、5行改为 c1=‘’a‘’; c2=‘’b‘’; 再运行,并分析结果。 ○6再将第4、5行改为 c1=300; c2=400; 再运行,并分析结果。 以字符型输出时,输出的将是300,400对应的字符。 (2)输人并运行教材第3章习题3. 6给出的程序 #include main () { char c1='a',c2='b',c3='c',c4='\101',c5='\116';

化学实验报告格式模板.doc

化学实验报告格式模板 (以草酸中h2c2o4含量的测定为例) 实验题目:草酸中h2c2o4含量的测定 实验目的: 学习naoh标准溶液的配制、标定及有关仪器的使用; 学习碱式滴定管的使用,练习滴定操作。 实验原理: h2c2o4为有机弱酸,其ka1=5.9×10-2,ka2=6.4×10-5。常量组分分析时cka1>10-8,cka2>10-8,ka1/ka2<105,可在水溶液中一次性滴定其两步离解的h+: h2c2o4+2naoh===na2c2o4+2h2o 计量点ph值8.4左右,可用酚酞为指示剂。 naoh标准溶液采用间接配制法获得,以邻苯二甲酸氢钾标定: -cook -cooh +naoh=== -cook

-coona +h2o 此反应计量点ph值9.1左右,同样可用酚酞为指示剂。 实验方法: 一、naoh标准溶液的配制与标定 用台式天平称取naoh1g于100ml烧杯中,加50ml蒸馏水,搅拌使其溶解。移入500ml试剂瓶中,再加200ml蒸馏水,摇匀。 准确称取0.4~0.5g邻苯二甲酸氢钾三份,分别置于250ml 锥形瓶中,加20~30ml蒸馏水溶解,再加1~2滴0.2%酚酞指示剂,用naoh标准溶液滴定至溶液呈微红色,半分钟不褪色即为终点。 二、h2c2o4含量测定 准确称取0.5g左右草酸试样,置于小烧杯中,加20ml蒸馏水溶解,然后定量地转入100ml容量瓶中,用蒸馏水稀释至刻度,摇匀。 用20ml移液管移取试样溶液于锥形瓶中,加酚酞指示剂1~2滴,用naoh标准溶液滴定至溶液呈微红色,半分钟不褪色即为终点。平行做三次。 实验数据记录与处理: 一、naoh标准溶液的标定

:C语言实验报告册-2016.3资料

学生实验报告册 (理工类) 课程名称:C语言程序设计实验专业班级: 16数字媒体技术学生学号: 1613031008 学生姓名:李翔 所属院部:计算机工程学院指导教师:吕艳林 20 16 ——20 17 学年第一学期 金陵科技学院教务处制

实验报告书写要求 实验报告上交电子稿,标题采用四号黑体,正文采用小四号宋体,单倍行距。 实验报告书写说明 实验报告中实验目的和要求、实验仪器和设备、实验内容与过程、实验结果与分析这四项内容为必需项。教师可根据学科特点和实验具体要求增加项目。 填写注意事项 (1)细致观察,及时、准确、如实记录。 (2)准确说明,层次清晰。 (3)尽量采用专用术语来说明事物。 (4)外文、符号、公式要准确,应使用统一规定的名词和符号。 (5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用五级记分制或百分制,按《金陵科技学院课堂教学实施细则》中作业批阅成绩评定要求执行。

实验项目名称:初级程序设计实验学时: 6 实验地点: A107 实验日期: 2016年10月13,20,27 实验成绩: 批改教师:批改时间:

实验1 初级程序设计 一、实验目的和要求 (1)熟悉Visual C++集成环境,进行编辑、保存、编译、连接及运行,并能进行简单程序调试; (2)掌握C语言中各种运算符的使用; (3)掌握C语言中各种数据类型的区别与应用; (4)熟练掌握C语言中变量的定义、赋值和使用,表达式语句、输入/输出语句的使用; (5)掌握C语言中输入/输出函数的使用; (6)掌握C语言中控制语句的使用,含if-else、for、while、do-while语句的使用。 二、实验仪器和设备 奔腾以上计算机,装有windows XP以上版本操作系统和Visual C++ 6.0软件。 三、实验内容与过程 1、程序调试 (1)#include main() { int s,t,p,sum; scanf(“%d%d%d”,&s,&t,&p); sum=s+t+p; printf(“sum=%d\n”,sum); } (2)#include main() { int k=3; if(k=3) printf(“***”); else printf(“###”); } (3)#include main() {int k=0; do { printf(“k=%d\n”,k); }while(k++>0); } 2、程序改错

C语言实验报告第3章答案

3.2 基础实验 一、程序分析 a,A↙ 1. 以下程序若输入’a’,则输入格式为:c1=a;运行结果为: 。 #include intmain( ) {char c1,c2; scanf(“c1=%c”,&c1); c2=c1-32; printf( “%c,n%”c ,c1,c2); return 0; } 2. 以下程序如果使得 a 的值为2、b 的值为3,则输入格式为:_a=2,b=3;运行结果为:_2,3↙_。 #include intmain( ) { int a,b; scanf(“a=%d,b=%d”,&a,&b); printf( “%n”a,,b); return 0; } 3.以下程序若输入12.3、7.6、1.1,则输入格式为:_12.3 7.6 1.1;运行结 果为:_aver=7.00。 #include intmain( ) { floata,b,c,d; scanf(“%f%f%f ”,&a,&b,&c); d=(a+b+c)/3; printf( av“er=%.2f”d,); return 0; } 二、程序填空 1.输入一个四位整数,求各位数字之和(如1234,则结果为1+2+3+4=10)。若输入3562,则运行结果为:3+5+6+2=16↙。

2.给定一个华氏法表示的温度值,将其转换为摄氏法表示的温度,转换公式 为则运行结果为: f=64.00,c=17.78↙ 。 #include intmain ( ) c ( f 9 5 { float f,c; f=64.0; c= (f-32)*5.0/9.0 ; printf( return 0; “ f=% n ”,f,c); } 三、程序改错 找错 错误在 4 行 #include 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; } 32) 行号 1 1. 分析以下程序段,找出错误并改正。 源程序 #include 2 main ( ) 3 { int i; float k; 4 scanf(“i=%d ”,i); 5 k=3.12*i; 6 printf( “.2f %\n ”,k); 7 return 0; 8 }

实验报告格式模板

实验报告格式模板 实验报告的书写是一项重要的基本技能训练。它不仅是对每次实验的总结,更重要的是它可以初步地培养和训练学生的逻辑归纳能力、综合分析能力和文字 表达能力,是科学论文写作的基础。因此,参加实验的每位学生,均应及时认真地书写实验报告。要求内容实事求是,分析全面具体,文字简练通顺,誊写清楚整洁。 实验报告内容与格式 (一)实验名称 要用最简练的语言反映实验的内容。如验证某程序、定律、算法,可写成“验证XXX” ;分析XXX。 (二)所属课程名称 (三)学生姓名、学号、及合作者 (四)实验日期和地点(年、月、日) (五)实验目的 目的要明确,在理论上验证定理、公式、算法,并使实验者获得深刻和系统的理解,在实践上,掌握使用实验设备的技能技巧和程序的调试方法。一般需说明是验证型实验还是设计型实验,是创新型实验还是综合型实验。 (六)实验内容 这是实验报告极其重要的内容。要抓住重点,可以从理论和实践两个方面考虑。这部分要写明依据何种原理、定律算法、或操作方法进行实验。详细理论计算过程? (七)实验环境 实验用的软硬件环境(配置)。 (八)实验步骤 只写主要操作步骤,不要照抄实习指导,要简明扼要。还应该画出实验流程图(实验装置的结构示意图),再配以相应的文字说明,这样既可以节省许多文字说明,又能使实验报告简明扼要,清楚明白。

(九)实验结果 实验现象的描述,实验数据的处理等。原始资料应附在本次实验主要操作者的实验报告上,同组的合作者要复制原始资料。 对于实验结果的表述,一般有三种方法: 1.文字叙述:根据实验目的将原始资料系统化、条理化,用准确的专业术语客观地描述实验现象和结果,要有时间顺序以及各项指标在时间上的关系。 2.图表:用表格或坐标图的方式使实验结果突出、清晰,便于相互比较, 尤其适合于分组较多,且各组观察指标一致的实验,使组间异同一目了然。每一图表应有表目和计量单位,应说明一定的中心问题。 3.曲线图应用记录仪器描记出的曲线图,这些指标的变化趋势形象生动、直观明了。 在实验报告中,可任选其中一种或几种方法并用,以获得最佳效果。 (十)讨论 根据相关的理论知识对所得到的实验结果进行解释和分析。如果所得到的实验结果和预期的结果一致,那么它可以验证什么理论?实验结果有什么意义?说明了什么问题?这些是实验报告应该讨论的。但是,不能用已知的理论或生活经验硬套在实验结果上;更不能由于所得到的实验结果与预期的结果或理论不符而随意取舍甚至修改实验结果,这时应该分析其异常的可能原因。如果本次实验失败了,应找出失败的原因及以后实验应注意的事项。不要简单地复述课本上的 理论而缺乏自己主动思考的内容。 另外,也可以写一些本次实验的心得以及提出一些问题或建议等。 (十-)结论 结论不是具体实验结果的再次罗列,也不是对今后研究的展望,而是针对这一实验所能验证的概念、原则或理论的简明总结,是从实验结果中归纳出的一般性、概括性的判断,要简练、准确、严谨、客观。 (十二)鸣谢(可略) 在实验中受到他人的帮助,在报告中以简单语言感谢. (十三)参考资料 详细列举在实验中所用到的参考资料. 格式: 作者年代书名及页数出版社

C语言实验报告

实验一进制转换一、实验要求 采用模块化程序设计完成进制转换。由键盘输入一个十进制正整数,然后将该数转换成指定的进制数(二、八、十六) 形式输出。指定的进制由用户输入。 二、实验目的 1、熟悉C 环境的安装、使用。 2、承上启下,复习《C 程序设计》等基础课程的知识。 3、掌握C 语言编程的方法。 三、预备知识 1、VC6.0的安装与使用。 2、C 程序设计基础知识。 四、实验内容 采用模块化程序设计完成进制转换。

五、程序框图 六、程序清单 1. 编写主函数:输入需转换的数与转换的进制 2. 编写子函数 (1)函数转换为除16进制以外的进制转换算数编程,使用while 循环实现计算进制 的转换,并输出转换后的数字; (2)函数转换为16进制,用while 函数实现16进制转换的计算并输出16进制转换后的数据; 3. 编写数组,关于16进制的一系列字符 4. 编写主函数加入do while 使函数可以循环。

七、实验步骤 #include char num[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; void fun(int n, int m) { int i=-1, a[100]; if(m!=16) { while(n) { a[i++]=n%m; n=n/m; } while(i!=-1) printf("%d",a[--i]); printf("\n");

} else { while(n) { a[++i]=num[n%16]; n/=16; } while(i!=-1) printf("%c",a[i--]); printf("\n"); } } int main() { int a, c;

C语言程序设计基础实验报告3【VIP专享】

实验3 逻辑结构程序设计一、实验目的 1、了解C 语言表示逻辑量的方法(以0代表“假”,以非0代表“真” )。 2、学会正确使用逻辑运算符和逻辑表达式。 3、熟练掌握if 语句和switch 语句。 4、结合程序掌握一些简单的算法。 5、学习调试程序。 二、实验内容和步骤 本实验要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。 1、改错题。给定程序MODI1.C 的功能是:对于如下函数: 用scanf 函数输入x 的值,求y 值。/* MODI1.C */#include 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 ; else y = 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 x y

2、从键盘输入某学生的考试成绩,要求输出成绩等级A 、B 、C 、D 、E 。学生的成绩可分成5个等级,90- 100分为A 级,80-89分为B 级,70-79分为C 级,60-69分为D 级,0-59分为E 级。要求在输入负数时, 给出错误提示。 ① 事先编好程序,要求分别用if 语句和switch 语句实现。运行程序,并检查结果是否正确。 ② 再运行一次程序,输入分数为负值(如-70),这显然是输入时出错,不应给出等级。修改程序,使之 能正确处理任何数据。当输入数据大于100或小于0时,通知用户“输入数据错”,程序结束。 3、给一个不多于5位的正整数,要求:①求出它是几位数;②分别打印出每一位数字;③按逆序打印出各位 数字,例如:原数据为321,应输出123。(BX4.6) 分别用1位正整数、2位正整数、3位正整数、4位正整数、5位正整数作为测试数据进行测试。 除此之外,程序还应当对不合法的输入作必要的处理。例如:当输入负数时或输入的数超过5位(如123 456)数时。4、输入3 个整数,要求按由小到大的顺序输出。

实验报告格式参考模板

实验报告格式参考模板 实验名称:粉体真密度的测定 粉体真密度是粉体质量与其真体积之比值,其真体积不包括存在于粉体颗粒内部的封闭空洞。所以,测定粉体的真密度必须采用无孔材料。根据测定介质的不同,粉体真密度的主要测定方法可分为气体容积法和浸液法。 气体容积法是以气体取代液体测定试样所排出的体积。此法排除了浸液法对试样溶解的可能性,具有不损坏试样的优点。但测定时易受温度的影响,还需注意漏气问题。气体容积法又分为定容积法与不定容积法。 浸液法是将粉末浸入在易润湿颗粒表面的浸液中,测定其所排除液体的体积。此法必须真空脱气以完全排除气泡。真空脱气操作可采用加热(煮沸)法和减压法,或两法同时并用。浸液法主要有比重瓶法和悬吊法。其中,比重瓶法具有仪器简单、操作方便、结果可靠等优点,已成为目前应用较多的测定真密度的方法之一。因此,本实验采用比重瓶法。 一.实验目的 1. 了解粉体真密度的概念及其在科研与生产中的作用; 2. 掌握浸液法—比重瓶法测定粉末真密度的原理及方法; 3.通过实验方案设计,提高分析问题和解决问题的能力。 二.实验原理

比重瓶法测定粉体真密度基于“阿基米德原理”。将待测粉末浸入对其润湿而不溶解的浸液中,抽真空除气泡,求出粉末试样从已知容量的容器中排出已知密度的液体,就可计算所测粉末的真密度。真密度ρ计算式为: 式中:m0——比重瓶的质重,g; ms—— (比重瓶+粉体)的质重,g; msl—— (比重瓶+液体)的质重,g;ρl——测定温度下浸液密度;g/cm3;ρ——粉体的真密度,g/cm3; 三.实验器材: 实验仪器:真空干燥器,比重瓶;分析天平;烧杯。实验原料:金刚砂。 四.实验过程 1. 将比重瓶洗净编号,放入烘箱中于110℃下烘干冷却备用。 2. 用电子天平称量每个比重瓶的质量m0。 3. 每次测定所需试样的题记约占比重瓶容量的1/3,所以应预先用四分法缩分待测试样。 4. 取300ml的浸液倒入烧杯中,再将烧杯放进真空干燥器内预先脱气。浸液的密度可以查表得知。 5. 在已干燥的比重瓶里的物体受到向上的浮力作用,浮力的大小等于被该物体排开的液体的重力。 七.实验心得 以往的实验都是比着实验书本操作,而本次实验实验方案则是自己自主完成的,毫无经 12(4

C语言实验报告答案

二、编程题(参考答案) 1、 #include “stdio.h” void main() { int Math=82,eng=78,comp=91,average; average=(Math+eng+comp)/3; printf(“Math=%d,eng=%d,comp=%d,average=%d\n”,Math,eng,comp,average); } 2、 #include “stdio.h” void main() { int n=152,d1,d2,d3; d1=n%10; d2=(n/10)%10; d3=n/100; printf(“整数%d的个位数字是%d,十位数字是%d,百位数字是%d\n”,n,d1,d2,d3); } 3、 #include “stdio.h” void main() { int n1,n2; printf(“Enter n1,n2:”); scanf(“%d,%d”,&n1,&n2); printf(“%d+%d=%d\n”,n1,n2,n1+n2); printf(“%d/%d=%d\n”,n1,n2,n1/n2); printf(“%d%%%d=%d\n”,n1,n2,n1%n2); } 三、改错题 原错误行(共三行): /********************************** found ********************************/ #include “stdoi,h” /********************************** found ********************************/ printf(“%d=%d*%d\n”,x); /********************************** found ********************************/ printf(“%d*%d=%d\n”,y); 改正后: #include “stdio.h” printf(“%d=%d*%d\n”,y,x,x); printf(“%d*%d=%d\n”,x,x,y);

C语言编程实验报告(三)

华北水院高级语言程序设计(C语言)实验报告(三) 2012--2013学年第二学期 2012级专业:学号:姓名:……………………………………………………………………………………………… 一、实验题目:循环结构程序设计 二、实验目的:(略) 三、实验内容 1. 程序验证(略) 2.程序设计 1) 找出100-900之间的无暇素数。所谓无暇素数是指本身为素数,且其逆序数也是素数的数。例如:113是一个素数,311也是一个素数,113就是无暇素数。 源代码:运行结果: #include "stdafx.h" #include #include 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 #include 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); }

c语言实验三实验报告

C语言程序设计实验报告 实验三使用数组的程序设计 班级学号姓名 一、实验目的 (1)掌握一维数组和二维数组的定义、赋值和输入输出方法。 (2)掌握字符数组的使用。 (3)掌握与数组有关的算法。 二、实验内容及步骤 1、检验并打印幻方矩阵 在下面的5*5阶幻方矩阵中,每一行、每一列、每一对角线上的元素之和都是相等的,试编写程序将这些幻方矩阵中的元素读到一个二维整型数组中,然后检验其是否为幻方矩阵,并将其按如下格式显示到屏幕上。 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 程序代码: #include int main() { int i,j,k=0; int sum1[5]={0},sum2[5]={0},b[2]={0}; int a[5][5]={{17,24,1,8,15},{23,5,7,14,16},{4,6,13,20,22},{10,12,19,21,3},{11,18,25, 2,9}}; for(i=0;i<5;i++) { for(j=0;j<5;j++) { printf("%4d",a[i][j]); sum1[i]=sum1[i]+a[i][j]; sum2[i]=sum2[i]+a[j][i]; } printf("\n"); } for(i=0;i<5;i++) { b[0]=b[0]+a[i][i]; b[1]=b[1]+a[i][4-i]; } for(i=0;i<5;i++) {

if(sum1[i]==b[0]&&sum2[i]==b[0]&&b[0]==b[1]) k++; } if(k==5) printf("这是一个幻方矩阵.\n"); else printf("这不是一个幻方矩阵.\n"); return 0; } 2、完成以下程序,并进行调试 某班期末考试科目为数学、英语和计算机,有最多不超过30人参加考试,考试后要求:1)计算每个学生的总分和平均分; 2)按总分成绩由高到低排出成绩的名次; 3)打印出名次表,表格内包括学生学号、各科分数、总分和平均分; 4)任意输入一个学号,能够查找出该学生在班级中的排名及其考试分数。 【提示】:用二维数组score存放每个学生各门课程的成绩,用一维数组num存放每个学生的学号,用一维数组sum存放每个学生的总分,用一维数组aver存放每个学生的平均分。 程序代码: #include int main() { int i,j,k,l,g,t,s,r,p; int score[31][4],num[31],sum[31]={0},aver[31],m; printf("请输入学生人数:\n"); scanf("%d",&k); for(i=1;i<=k;i++) { printf("请输入学号和各科成绩:\n");//输入学号及成绩 scanf("%d",&num[i]);getchar(); for(j=1;j<4;j++) { scanf("%d",&score[i][j]);getchar(); sum[i]=sum[i]+score[i][j]; } aver[i]=sum[i]/3; } for(j=1;j

C语言实验报告

《程序设计基础》实验报告

提示:设 int x=298; 再定义两个变量存放分(m)、秒(s)值; 则:m=x/60;s=x%60; 请编一个程序,上机调试并运行。 实验过程及结果记录: 1. #include"stdafx.h" #define K 0.7 int main() { float a, b; printf_s("please input cost price of TV:"); scanf_s("%f", &a); b = a*K; printf_s("the current price of TV:"); printf_s("%f", b); return 0; 2. #include "stdafx.h" int main() { int a, b, c, d, e, f; printf_s("please input three figures:"); scanf_s("%d", &a); b = a / 100; c = a % 100; d = c / 10; e = c % 10; f = e * 100 + d * 10 + b; printf_s("the new three figures:"); printf_s("%d", f); return 0;

} 3. #include "stdafx.h" int main() { float a, b, c, d, e; printf_s("please input scores:\n"); scanf_s("%f%f%f", &a, &b, &c); d = a + b + c; e = (a + b + c) / 3; printf_s("the total scores:"); printf_s("%5.1f\n", d); printf_s("the average scores:"); printf_s("%4.1f\n", e); return 0; } 4. #include "stdafx.h" int main() {

相关文档