C语言上机实验报告.doc
《C语言上机实验报告.doc》由会员分享,可在线阅读,更多相关《C语言上机实验报告.doc(37页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、青青 岛岛 理理 工工 大大 学学课程实验报告课程实验报告课程名称计算机程序设计 (C)班级软件 111实验日期2011.04.21姓名赵亚东学号20110720 9实验成绩实验名称实验一 C 程序的运行环境和运行 C 程序的方法实 验 目 的 及 要 求1熟悉 Visual C+6.0 环境。 2了解建立控制台应用程序的基本步骤。 3初步了解 Visual C+6.0 的环境设置。 4初步学会简单的程序调试方法。 5学会编写简单的 C 程序。 6初步熟悉 C 语言操输入 scanf 函数、输出 printf 函数的使用。 7掌握 C 语言基本数据类型,熟悉变量的定义及变量的初始化和赋 值操作
2、。 8掌握不同的类型数据之间赋值的规律。 9掌握 C 语言的算术运算符的使用以及算术表达式的使用;掌握自 加自减运算符的特点及使用。实 验 环 境Visual 6.0+ Windows 7实 验 内 容1按照上述步骤,创建一个基于控制台的应用程序,该程序项目中只包含一 个源程序文件。功能为求两个整数的和,数据从键盘输入。 2创建一个基于控制台的应用程序,求一元二次方程的根。使得当输入三个 实数 a,b,c(满足 b*b-4*a*c0) ,能够求出方程 a*x*x+b*x+c=0 的两个实根, 并显示在屏幕上。分析提示: 通过键盘输入方程系数 a,b,c 的值,而后根 据求根公式计算并输出它的两
3、个根。算 法 描 述实验 一 1、先定义两个变量 a,b。2、键入 a 和 b。3、输出两个数的和。 实验 二 1、定义并输入 a b c。2、判断 d=b2-4ac 的大小。3、如果小于零则及 实 验 步 骤无解,等于零有一个解,x1=(-b)/(2*a)。4、大于零有两个解。x1=(- b+sqrt(d)/(2*a);x2=(-b-sqrt(d)/(2*a);5、输出结果。调 试 过 程 及 实 验 结 果1 2 总结掌握了掌握 C 语言基本数据类型,变量的定义及变量的初始化和赋 值操作,不同的类型数据之间赋值的规律。 了解了 C 语言的算术运算符的使用以及算术表达式的使用,自加自 减运算
4、符的特点及使用。附 录实验一 1 #include void main() int a,b,s; scanf(“%d%d“, printf(“s=%dn“,a+b); 实验一 2 #include #include void main() double a,b,c,d,x1,x2; printf(“a b c :“); scanf(“%lf%lf%lf“, d=b*b-4*a*c; if (d void main() int a; printf(“请输入学生成绩:n“); scanf(“%d“, if (a90) printf(“该学生成绩等级是 An“); else if (a80) pri
5、ntf(“该学生成绩等级是 Bn“); else if (a70) printf(“该学生成绩等级是 Cn“); else if (a60) printf(“该学生成绩等级是 Dn“); else printf(“该学生成绩等级是 En“); 用 switch 语句:#include void main() int a,m;printf(“请输入学生成绩:n“); scanf(“%d“, m=a/10; switch(m) case 9:printf(“该学生的成绩等级是:An“); case 8:printf(“该学生的成绩等级是:Bn“); case 7:printf(“该学生的成绩等级是
6、:Cn“); case 6:printf(“该学生的成绩等级是:Dn“); default:printf(“该学生的成绩等级是:En“); 实验二 4#include void main() float a,b; char c; scanf(“%f%c%f“, switch(c) case +:printf(“%fn“,a+b);break; case -:printf(“%fn“,a-b);break; case *:printf(“%fn“,a*b);break; case /:printf(“%fn“,a/b);break; 青青 岛岛 理理 工工 大大 学学课程实验报告课程实验报告课程
7、 名称计算机程序设 计 (C)班级软件 111实验日 期2012-5-2姓名赵亚东学号201107209实验成 绩 实验 名称实验三实验三 循环结构程序设计循环结构程序设计实 验 目 的 及 要 求1熟练掌握 while、do-while、for 语句的特点,学会设计循环结构程序。 2掌握 break 语句以及 continue 语句的特点及使用范围。 3学会编写循环嵌套程序。 3结合程序掌握一些简单的算法。 4进一步学习调试程序。实 验 环 境Visual 6.0+ Windows 7实 验 内 容4编程练习。求 的部分和。直到最后一项的值小于 1.0e- 4。提示:第 n 项 un=xn/
8、n!, 第 n+1 项 un+1= xn+1/(n+1)!及 un+1 = un(x/(n+1) 5编程练习。有 1、2、3、4 四个数字,能组成多少个互不相同且无重复数字的三位数?分 别是多少?算 法 描 述 及 实 验 步 骤实验四 1、调用函数。2、定义 x s i j。输入 x。3、直到 n 大于 10000。4、 i=i*(x/(j+1); s=s+i; 5、输出 s 实验五 1、定义 i j k fre=0。2、利用三重 for 语句。for(i=1;i #include void main() int x; double s,i,j; scanf(“%d“, s=1,j=0; f
9、or(i=1;i=pow(10,-4);j+) i=i*(x/(j+1); s=s+i; printf(“s=%fn“,s); 实验三 4 #include void main() int i,j,k,fre=0; for(i=1;i void main() int a30,i,j=1;for(i=1;i #include void main() int i,a20; for(i=0;i int isprime(int n) int i; for(i=2;i #include double f(float x) double c; c=(2*pow(x,3)+3*pow(x,2)-4*x+1)
10、/(10*pow(x,2)+3); return c; double q(float x) double c; c=3*pow(f(x),3)+2*pow(f(x),2)+f(x); return c; main() float x; double y; scanf(“%f“, y=q(x); printf(“%lfn“,y); 实验 5 #include int fib(int x) if(x=1|x=2) return 1; else return fib(x-1)+fib(x-2); main() int n,s; for(n=1;n void fu(float *p) int a; a
11、=(int)*p; printf(“整数部分是%d 小数部分是%fn“,a,*p-a); main() float a3; int i; for(i=0;i int dizhi(int *p) int s; p= printf(“地址是:%dn“,p); return p; main() int i,s,a10,*p; for(i=0;i void fu(float *p) int a; a=(int)*p; printf(“整数部分是%d 小数部分是%fn“,a,*p-a); main() float a3; int i; for(i=0;i int dizhi(int *p) int s;
12、 p= printf(“地址是:%dn“,p); return p; main() int i,s,a10,*p; for(i=0;i #define N 5 void input(struct student stud); double av1(struct student stud); double av2(struct student stud); double av3(struct student stud); int max(struct student stud); struct student int no; char name10; double degree1; double
13、 degree2; double degree3; ; void main() struct student studN; double aver3,avg;int a,i; input(stud);aver0=av1(stud); aver1=av2(stud); aver2=av3(stud); a=max(stud); avg=(studa.degree1+studa.degree2+studa.degree3)/3.0; for(i=0;i #include #define N 3 typedef struct stud int no; char name10; char sex10;
14、 int age; struct stud *next; Stud; Stud *create(); void show(Stud *head); void delet(Stud *head); Stud *getnode(Stud *head,int n); void shan(Stud *head); void main()/主函数 Stud *head; int n;do printf(“1-创建链表,2-显示链表,3-删除相同年龄,0-退出操作n“); scanf(“%d“, switch(n) case 1:head=create();break; case 2:show(head)
15、;break; case 3:delet(head);break; default:break; while(n!=0); Stud *create()/创建链表储存学生信息 Stud *p,*head,*r; int i; head=(Stud *)malloc(sizeof(Stud); r=head; printf(“输入学生信息格式:学号、姓名、性别、年龄n“); for(i=1;ino,p-name,p-sex, r-next=p; r=p; r-next=NULL; return head; void show(Stud *head)/显示学生信息 int i=0; Stud *p
16、=head-next; printf(“学生信息如下:n“); while(p!=NULL) printf(“第%d 个学生信息:nn“,i+1); printf(“%dt%st%st%dn“,p-no,p-name,p-sex,p-age); p=p-next; i+; Stud *getnode(Stud *head,int n) int i=1;Stud *p=head; if(nnext; i+; if(p!=NULL) return p; else return NULL; void delet(Stud *head)/删除与输入年龄相同的学生信息 int year,i=1,k=1;
17、 Stud *p=head-next,*q; printf(“输入要删除的年龄n“); scanf(“%d“, while(p!=NULL) if(year=p-age) if(k=1) head-next=p-next; free(p);p=head; else q=getnode(head,k); q-next=p-next; free(p); p=q; else k+; p=p-next; printf(“相同年龄已删除n“);青青 岛岛 理理 工工 大大 学学课程实验报告课程实验报告课程名称计算机程序设计 (C)班级软件 111实验日期2012-6-8姓名赵亚东学号20110720 9
18、实验成绩实验名称 实验八 综合程序设计实 验 目 的 及 要 求1.掌握文件以及缓冲文件系统、文件指针的概念。 2.学会使用文件打开、关闭、读、写等文件操作函数。 3.通过一个综合程序,使学生对综合运用 C 语言程序设计语言有初步的认识。实 验 环 境VC+6.0实 验 内 容一、学生管理系统 1、学生基本信息的管理,包括添加、修改、删除、查找、全删等 操作; 2、课程数据的管理,包括添加、修改、删除、查找、全删等操作;3、学习成绩数据的管理,包括添加、修改、删除、查找、全删等 操作; 4、学生成绩查询系统,包括按学号、按课程号、按班号统计学生 的成绩。算 法 描 述 及 实 验 步 骤首先自
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 上机 实验 报告
限制150内