C语言实验指导书全教程Word格式.docx

上传人:b****6 文档编号:20233458 上传时间:2023-01-21 格式:DOCX 页数:36 大小:109.95KB
下载 相关 举报
C语言实验指导书全教程Word格式.docx_第1页
第1页 / 共36页
C语言实验指导书全教程Word格式.docx_第2页
第2页 / 共36页
C语言实验指导书全教程Word格式.docx_第3页
第3页 / 共36页
C语言实验指导书全教程Word格式.docx_第4页
第4页 / 共36页
C语言实验指导书全教程Word格式.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

C语言实验指导书全教程Word格式.docx

《C语言实验指导书全教程Word格式.docx》由会员分享,可在线阅读,更多相关《C语言实验指导书全教程Word格式.docx(36页珍藏版)》请在冰豆网上搜索。

C语言实验指导书全教程Word格式.docx

结构体的定义及其应用

结构体类型及其变量、结构体数组

8

指针的定义及其应用

指针变量的定义及多方面的应用

9

文件的应用

磁盘文件的操作

10

综合性实验

软件系统小程序

综合性

四、每组人数与实验学时数

每组1人,实验共40学时

五、考核方式与评分办法

实验总成绩=出勤情况*10%+实验报告*20%+平时*30%+实验内容*40%

六、本实验课配套教材或实验指导书

教材:

苏小红主编.C语言大学实用教程,电子工业出版社,十一五国家级规划教材,2008.7

参考书:

[1]何钦铭,颜晖主编.C语言程序设计,高等教育出版社,十一五规划教材,2008.1

[2]颜晖主编.C语言程序设计实验指导,高等教育出版社,2008.1

[3]张引,何钦铭等.C程序设计基础课程设计,浙江大学出版社,2007.9

[4]谭浩强.C程序设计题解与上机指导.北京:

清华大学出版社.2006年3月第3版

[5]谭浩强.C程序设计试题汇编.北京:

清华大学出版社.2006年3月第2版

[6]夏宽理.C语言程序设计.北京:

中国铁道出版社.2006年2月第1版

[7]夏宽理.C语言程序设计上机指导与习题解答.北京:

中国铁道出版社.2006.2

[8]王士元.C高级实用程序设计.北京:

清华大学出版社.1996年1月第1版

[9]谭浩强.C程序设计.北京:

七、实验报告要求

上机实验目的在于:

①通过验证课本中的内容及自己编写的程序,加深对课本中词法、语法的掌握;

②熟悉所用的C语言开发环境;

③上机调试自己的程序,学会编程,重要是能上机调试通过,调试经验是通过自己的直接实践来累积。

上机实验的要求:

①课前准备好上机所要的程序源代码;

②上机输入和调试自己的程序,努力独立完成调试过程,自行解决编译错误;

③实验结束,认真编写实验报告

在机器上运行程序代码,每次实验成绩分为优、良、及格、不及格,未参加的为0分。

要求认真编写实验报告。

报告内容应包含以下内容:

1.实验题目

2.实验目的和要求

3.解题思路

4.调试过程(实验过程出现的问题及解决的方法或尚未解决的问题)

5.程序代码及运行结果

6.实验结果分析

7.教师评语

 

第二部分:

C语言程序设计的运行环境VC++6.0

------VC++6.0集成开发环境的使用

在众多的面向对象程序设计语言中,Microsoft公司的VC++6.0独树一帜,是一个集程序编辑、编译、连接和调试于一体的C语言程序开发环境。

在Windows环境下,操作方便。

VC环境中运行C语言源程序的步骤

1、启动VisualC++6.0开发环境

2、创建一个项目

(1)在VisualC++6.0开发环境主窗口,单击File菜单中的New选项,显示一个New对话框,如下:

(2)单击Projects,选择Win32ConsoleApplocation,并在右侧相应的文本框中填入项目的路径和名称

(3)在弹出的Win32ConsoleApplocation-Step1of1对话框中选择Anemptyproject单选项,然后单击Finish.

(4)最后在NewProjectInformation对话框中单击OK。

3、建立C源程序文件

(1)选择菜单命令Project|AddtoProject|New,弹出New对话框。

(2)在New对话框的Files中选择C++SourceFile,并写入文件名,单击OK

4、编辑C语言源程序

(1)在文件编辑窗口中输入源代码

(2)选择File|Save,保存程序

5、建立并运行可执行程序

(1)选择菜单命令Build|BuildFilename.ext建立可执行文件

(2)选择菜单命令Build|ExecuteFilename.exe运行程序,观察显示的内容

6、关闭工作空间

选择菜单命令File|CloseWorkspace关闭工作空间。

例:

从键盘上输入两个整数,输出两者中的较大数。

1、新建一CPP文件后,在编辑窗口输入源代码如下:

2、编译、连接后,从键盘上输入12,34<

回车>

则可查看程序运行结果:

第三部分:

实验内容

实验一:

熟悉VC++6.0运行环境

【目的与要求】

1、了解VC环境下C语言的运行环境,熟悉编译系统的操作环境。

2、了解在该系统上如何编辑和运行一个C程序。

3、通过运行简单的C程序,初步了解运行C语言程序的操作过程。

【实验内容】

1、题目:

由键盘输入两个整数,计算并输出两个数之和。

2、程序代码:

#include“stdio.h”

voidmain()

{inta,b,sum;

printf(“Pleaseinputtwointegernumbers:

\n”);

scanf(“%d%d”,&

a,&

b);

sum=a+b;

printf(“%d+%d=%d”,a,b,sum);

}

3、具体操作:

(1)输入程序,按Ctrl+F9。

若在运行后有词法或语法错误,则根据提示进行修改,再进行调试,直到没有语法错误。

(2)运行后,依下列不同的方式输入数据,查看程序执行结果。

①12<

Spacebar>

34↙

②12↙

34↙

③12<

Tab>

【实验分析与讨论】

1、总结C程序的基本结构和书写规则。

2、分析调试过程中常见的错误提示和解决策略。

3、掌握调试过程中问题解决的方法和思路

【DIY】

一、改错:

实现求三个数的平均值。

#include<

stdio.h>

voidmain()

{floata,b,c,sum;

floataverage;

a=10;

b=20;

c=35;

average==sum/3;

printf(“theaverageis%4d”,average);

二、填空:

实现从键盘中读取两个浮点型数据,相乘之后输出结果,要求结果须保留4位小数。

#include“stdio.h”

{___1___a,b,c;

printf(“pleaseentertwonumbers”);

scanf(“%f%f”,&

c=___2___;

printf(“c=___3___”,c);

三、编程

1、编写程序,实现对两个整数进行求和。

2、编写程序,在屏幕上显示如下图案。

*

***

****

3、菜单制作。

请在屏幕上显示下列菜单信息。

=======MainMenu=======

1---Input

2---Calculate

3---DisplayResult

实验二:

1、掌握三种基本数据类型(int、float、char)变量的定义。

2、掌握算术运算符、赋值运算符及其表达式的应用。

3、掌握C语言中的语句及顺序结构程序设计

一、求出含有两个实根(b2-4ac>

=0)的一元二次方程ax2+bx+c=0的解。

1、程序分析:

(1)定义变量:

a,b,c,x1,x2,delta

(2)输入a,b,c

(3)计算delta=b2-4ac(设delta>

=0)

x1=(-b+sqrt(delta))/(2*a)

x2=(-b-sqrt(delta))/(2*a)

#include“stdio.h”

#include“math.h”

{floata,b,c,x1,x2;

floatdelta;

printf(“Pleaseinputthethreecoef.:

\n”);

scanf(“%f%f%f”,&

b,&

c);

delta=b*b-4*a*c;

x1=(-b+sqrt(delta))/(2*a);

x2=(-b-sqrt(delta))/(2*a);

printf(“Therootsare:

\nx1=%4.2f,x2=%4.2f”,x1,x2);

3、具体操作:

(2)运行后,根据提示输入方程的三个系数值,键入回车,查看程序执行结果。

注:

输入浮点型系数方法同实验一。

二、输出特殊图案,请在c环境中运行,看一看,VeryBeautiful!

字符共有256个。

不同字符,图形不一样。

      

#include"

stdio.h"

voidmain()

{chara=176,b=219;

printf("

%c%c%c%c%c\n"

b,a,a,a,b);

a,b,a,b,a);

a,a,b,a,a);

}/*运行程序,观察结果*/

1、总结C程序的顺序结构程序的编写及调试方法。

一、改错

voidmain()

{inta,b,ab,ac,c;

printf(“pleasseenter3numbers:

”)

scanf(“%d,%d,%f”;

&

ab=a+b;

ac=a*c;

printf(“a+b+c=%d\n”,&

ab+c);

printf(“a*b*c=%d\n”,&

ac*b);

二、请写出下面程序的运行结果

{inta=10;

longintb=10;

floatc=10.0;

doubled=10.0;

%d\n%ld\n%f\n%lf\n"

a,b,c,d);

b,a,d,c);

%d\n%f\n%lf"

c,c,c);

三、编程

1、定义两个float类型数据,求和并将结果分别以“sum=?

”和”?

+?

=?

”形式输出。

如:

floata=3.4,b=9.0;

结果显示:

(1)sum=12.40

(2)3.4+9.0=12.40

2、输入两个数num1和num2,计算并输出它们的和、差、积、商与余数。

3、计算银行存款的本息。

输入存款金额money、存期year和年利率rate,根据公式计算存款到期时的本息合计sum(税前),输出时保留2位小数。

公式:

sum=money(1+rate)year

提示:

幂函数ax用库函数pow(a,x)来计算。

实验三:

1、了解分支结构的两条语句if和switch语法。

2、掌握关系运算符和逻辑运算符的运用

3、熟练掌握if语句和switch语句的应用

一、给出下列分段函数的计算程序代码。

根据输入的x的值,计算出y的值,并输出。

(x+5)2+3x(x>

0)

y=0(x=0)

(x-5)2-3x(x<

1、程序分析:

对于分段函数,运用if-else语句,即可解决。

2、程序代码:

{floatx,y;

printf(“EnterX:

scanf(“%f”,&

x);

if(x>

0)y=(x+5)*(x+5)+3*x;

elseif(x==0)y=0;

elsey=(x-5)*(x-5)-3*x;

printf(“x=%.2fy=%.2f\n”,x,y);

二、判断方程ax2+bx+c=0有几个解,若有,则输出其解。

1、程序分析:

对于方程ax2+bx+c=0的解,存在以下情况:

①a=0,不是一元二次方程;

②b2-4ac=0,有两个相等的实根;

③b2-4ac>

0,有两个不等的实根;

④b2-4ac<

0,有两个共轭复根。

(3)如果(a==0)则,不是一元二次方程

否则,计算delta=b2-4ac

根据delta的取值,输出方程根的情况:

if(b2-4ac==0)

x1=x2=-b/(2*a);

else

if(b2-4ac>

0)

{x1=(-b+sqrt(delta))/(2*a);

else{x1=(-b+sqrt(-delta)i)/(2*a);

x2=(-b-sqrt(-delta)i)/(2*a);

{floata,b,c,x1,x2,d;

floatq,p;

if(a==0)printf(“Error!

{delta=b*b-4*a*c;

if(delta==0)

printf(“Thetwoequalrootsare:

x1,x2=%4.2f”,-b/(2*a));

elseif(delta>

{x1=(-b+sqrt(d))/(2*a);

x2=(-b-sqrt(d))/(2*a);

printf(“Thetwo

actualrootsare:

x1=%4.2f,x2=%4.2f”,x1,x2);

else/*sqr(b)-4*a*c<

0*/

{p=-b/(2*a);

q=sqrt(-d)/(2*a);

printf(“Thetwovirtualrootsare:

x1=%4.2f+%4.2fi,x2=%4.2f-%4.2fi”,p,q,p,q);

}

三、求解简单表达式。

输入一个形式如“操作数运算符操作数”的四则运算表达式,

输出运算结果。

如:

输入:

2+45

显示:

2+45=47

程序代码:

{charoperator

floatoperand1,operand2;

printf(“Typeinanexpression:

\n”);

scanf(“%f%c%f”,&

operand1,&

operator,&

operand2);

switch(operator)

{case‘+’:

printf(“%.2f+%.2f=%.2f\n”,operand1,operand2,operand1+operand2);

break;

case‘-’:

printf(“%.2f-%.2f=%.2f\n”,operand1,operand2,operand1-operand2);

case‘*’:

printf(“%.2f*%.2f=%.2f\n”,operand1,operand2,operand1*operand2);

case‘/’:

printf(“%.2f/%.2f=%.2f\n”,operand1,operand2,operand1/operand2);

1、总结分支选择结构的设计方法与技巧。

2、掌握运用switch语句进行简单菜单的设计。

一、改错:

调试以下程序使之能求出三个数中的最小数。

{inta,b,c;

scanf(“%d%d%d”,a,b,c);

if((a>

b)&

(a>

c))

if(b<

c)printf(“min=%d\n”,b);

elseprintf(“min=%d\n”,c);

if((a<

(a<

c))printf(“min=%d\n”,a);

二、程序填空

#include<

{intyear,month,days;

printf(“enteryearandmonth:

”);

year,&

month);

switch(___1___)

{case1:

case3:

case5:

case7:

case8:

case10:

case12:

days=31;

case4:

case6:

case9:

case11:

days=30;

case2:

if(_____________2____________)

days=29;

elsedays=____3_____;

_____4______;

default:

printf(“inputerror!

!

days=0;

if(___5___)

printf(“%d,%dis%ddays\n”,year,month,days);

1、

(1)输入一个数,判断其是否为5的倍数。

(2)输入一个数,判断它的奇偶性。

(3)输入一个数,显示它的绝对值。

2、输入2个数(3个数),按从小到大的顺序显示到显示器。

3、输入5个数,找出其中最大的数,并输出到显示器。

4、出租车收费。

某城市普通出租车收费标准如下:

起步里程3公里,起步费用10元;

超起步里程后10公里内,每公里租费2元;

超过10公里以上的部分加50%的回空补贴费,即每公里租费3元。

营运过程中,因路阻及乘客要求临时停车的,每5分钟按1公里租费计收。

运价计费尾数四舍五入,保留到元。

编写程序,输入行驶里程(公里)与等待时间(分钟),计算并输出乘客应支付的车费(元)。

5、输入学生的百分制成绩score,按下列定义输出等级。

等级划分:

A(90~100)、B(70~89)、C(60~69)、D(0~59)

实验四:

1、掌握三种循环语句在编程中的使用。

2、理解break语句和continue语句在循环结构中的不同作用。

3、了解循环的嵌套调用过程。

4、掌握分支、循环嵌套在程序设计中的应用。

一、求下列表达式的值。

1/3+3/5+5/7+……+n/(n+2)//n为任意一个奇数

从上述表达式的形式看,当n确定下来之后,我们就从1/3开始,按照式子中给出的规律,一直累加到n/(n+2)

{floati,n,sum=0.0;

printf(“Pleaseinputanodd:

n);

for(i=1;

i<

=n;

i=i+2)

sum=sum+i/(i+2);

printf(“%.2f”,sum);

二、输入两个正整数,求出它们的最大公约数与最小公倍数。

1、算法分析:

[辗转相除法]对于两个数m和n,用n去除m,若余数为0,则n为最大公约数,否则将n作为m,余数作为n,再用n去除m,直到余数为0,则n为最大公约数。

{intm,n,t,max,min;

printf(“Pleaseinputtwointegernumbers:

m,&

min=m*n;

while(n!

{t=m%n;

m=n;

n=t;

printf(“最大公约数为:

%d\n”,m);

printf(“最小公倍数为:

%d\n”,min/m);

三、将一张100元钱,换成10元,20元,50元零钱,问有多少种不同的换法(假设三种零钱每种都可不出现)。

1、算法分析

运用穷举算法实现:

考虑到三种零钱各种可以不出现,则各自的张数范围如下:

10元--------0张到10张

20元--------0张到5张

50元--------0张到2张

并且要考虑到共数只有一张100元票子。

#include"

voidma

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1