《C程序设计》实验报告_第1页
《C程序设计》实验报告_第2页
《C程序设计》实验报告_第3页
《C程序设计》实验报告_第4页
《C程序设计》实验报告_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、c程序设计1实 验 报 告学 号姓 名班 级软091 指导教师安徽工业大学计算机学院2010年1月9日c程序设计实验报告实验一:熟悉c语言的运行环境1、实验目的 (1)了解turbo c和wintc的调试环境;(2)掌握调试c程序的四个步骤:编辑、编译、连接和运行;2、实验内容(1)首先调试下列程序,并将其以文件名first.c保存。#include int main(void) printf(this is a c program.n);getch(); (2)将 first.c另存为second.c,并改为如下程序后调试。#include stdio.hint main(void) pri

2、ntf( welcome!n ); printf(welcome!n ); printf(welcome!n ); printf(welcome!n );getch(); (3)对前两题的运行结果进行分析,然后总结调试c程序的基本步骤及观察结果的方法。 3、实验报告要求(1) 总结调试c程序的基本步骤与技巧;(2)各题程序运行结果及分析;(3)实验总结。实验二:运行一个c程序的方法1、实验目的(1)掌握c程序中定义主函数的方法;(2)掌握c程序中书写注释的方法;(3)了解printf函数的基本功能。*2、实验内容(1)编写程序输出以下图案:#includeint main(void) prin

3、tf( *n); printf( *n); printf( *n); printf(*n); getch();(2) 编写程序输出下列字符-your name:-your password:#includeint main(void) printf(_n); printf(your name:n); printf(_n); printf(your password:n); getch();(3) 编写程序输出你的姓名、学号、所在学院、专业和email地址,并对你的程序添加注释#includestdio.hint main(void) printf(xingming:zhou wenn); pr

4、intf(xuehao:099074173n); printf(suozaixueyuan:jisuanjixueyuann); printf(zhuanye;ruanjiangongchengn); printf(email dizhi:zhouwenjs126.comn); getch();(4) 运行教材page13中的程序,并观察结果#includeint main(void) int i,s=0; for(i=1;i=100;i+) if(i%2=0) s = s+i; printf(%d,s); getch(); return 0; (5) 修改上题程序,求1100中能被6整除的所

5、有整数的和,并观察结果。#includeint main(void) int i,sum=0; for(i=1;i=100;i+) if(i%6=0) sum = sum+i; printf(%d,sum); getch(); return 0; 3、实验报告要求(1) 各题程序、运行结果及分析; (2) printf函数输出字符串的方法;(3)实验总结。实验三:最简单的c程序设计1、实验目的(1)掌握赋值和复合赋值运算符的用法;(2)熟练掌握顺序结构程序设计的方法;(3)掌握scanf函数和printf函数的用法;2、实验内容(1) 编写程序计算下式:,其中x,a,b ,c,d 由键盘输入#

6、includeint main(void) int x,a,b,c,d; double y; printf(enter x:); scanf(%d,&x); printf(enter a:); scanf(%d,&a); printf(enter b:); scanf(%d,&b); printf(enter c:); scanf(%d,&c); printf(enter d:); scanf(%d,&d); y = x + (a + b)/(c - d); printf(y = %lfn,y); getch(); return 0;(2) 编写程序计算下式:y=sinx+cosx,其中x为弧

7、度,由键盘输入, sin函数和cosx函数由头文件math.h支持,注意使用方法。#include#includeint main(void) int x; double y,pi; pi=3.14; printf(enter x:); scanf(%d,&x); x=(x*pi)/180; y = sin(x) + cos(x); printf(y=%lf,y); getch(); return 0;(3)运行如下程序并分析结果:main() int num1=123; long num2=123456; double f1=3.1415926printf(num1=%d,num1=%5d,

8、num1=%-5d,num1=%2dn,num1,num1,num1,num1); printf(num2=%ld,num2=%8ld,num2=%5ldn,num2,num2,num2); printf(num1=%ldn,num1); printf(f1=%f,f1=%lf ,f1=%7.2f,f1=%-7.2fn,f1,f1,f1,f1); (4)设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆柱表面积、圆柱体积。要求用scanf函数输入数据,输出计算结果。输出时要有文字说明,取小数点后两位数字。#include#includeint main() float r,h; doubl

9、e l,s1,s2 ,v; printf(enter r and h:); scanf(%f%f,&r,&h); l = 2 * 3.1415926 * r; s1 = 3.1415926 * pow(r,2); s2 = 2 * 3.1415926 * pow(r,2) + 2 * 3.1415926 * r * h; v= 3.1415926 *pow(r,2)* h; printf(l=%.2lf,s1=%.2lf,s2=%.2lf,v=%.2lfn,l,s1,s2,v); getch(); return 0;3、实验报告要求(1) 各题程序、运行结果及分析; (2)总结格式字符的用法;

10、(3)实验总结。实验四:简单分支结构和循环结构程序设计1、实验目的(1)了解c语言表示逻辑量的方法;(2)学会正确使用关系运算符和关系表达式;(3)熟练掌握if语句。(4)熟悉for语句。2、实验内容 编程求解以下问题:(1)有一函数:用scanf 函数输入x的值,求y的值。#includeint main(void) double x,y; printf(enter x:); scanf(%lf,&x); if(x1) y = x; else y = 2 * x - 1; printf(y=%lfn,y); getch(); return 0;(2)给出一个百分制成绩,要求输出成绩等级a,b

11、,c,d,e。其中90分以上为a,8089为b,7079为c,6069为d,60分以下为e。当输入0100范围之外的数据时,要能报错#includeint main(void) float score; char grade; printf(nplease input a student score:); scanf(%f,&score); if(score100|score=90) grade=a; else if(score=80) grade=b; else if(score=70) grade=c; else if(score=60) grade=d; else grade=e; pr

12、intf(nthe student grade:%c,grade); getch();(3)编写程序输入两整数m和n,计算m!+n!并输出显示#includeint main(void) int i,m,n; double product1,product2,sum; printf(enter m and n:); scanf(%d%d,&m,&n); product1=1; product2=1; for(i=1;i=m;i+) product1=product1*i; for(i=1;i=n;i+) product2=product2*i; sum = product1 + product

13、2 ; printf(%.0fn,sum); getch(); return 0; (4)编写程序输入一整数i,求,可以调用pow()函数。#include#includeint main(void) int i,n; double power,sum; printf(enter n :); scanf(%d,&n); sum = 0; for(i=0;i=n;i+) power = pow(2,i); sum = sum + power; printf(sum=%.0fn,sum); getch(); return 0;3、实验报告要求(1) 各题程序、运行结果及分析; (2)实验总结。注:

14、所有实验报告请大家保管好,学期合并成一个文件再上交电子版实验五:逻辑结构程序设计(关于switch语句)1、实验目的(1)熟练掌握switch语句;(2)结合程序掌握一些简单的算法;(3)学会调试程序。2、实验内容(1) 用switch语句编程实现:给出一个百分制成绩,要求输出成绩等级a,b,c,d,e。其中90分以上为a,8089为b,7079为c,6069为d,60分以下为e。当输入0100范围之外的数据时,要能报错。/*输入一个百分制分数,输出对应的等级,当分数不在0-100内还可以报错*/#include int main(void) int g,s; char ch; printf(

15、“ninput a student grade:”); scanf(“%d”,&g); s=g/10;if(s10) printf(“ninput error!”);else switch(s) case10: case 9: ch=a;break; case 8: ch=b;break; case 7: ch=c;break; case 6: ch=d;break; default:ch=e; printf(“nthe student score:%c”,ch); getch();(2)给出一个不多于5位的正整数,要求: 求出它有几位数;分别打印出每一位数字;按逆序打印出各位数字#inclu

16、deint main(void) unsigned int i,j=0; int a,n,k=1; printf(i=); scanf(%d,&i); if(i9)+(i99)+(i999)+(i9999); printf(n=%dn,n); switch(n) case 5: a=i/10000;i%=10000;j+=a*k;k=k*10;printf(%d,a); case 4: a=i/1000;i%=1000;j+=a*k;k=k*10;printf(%d,a); case 3: a=i/100;i%=100;j+=a*k;k=k*10;printf(%d,a); case 2: a

17、=i/10;i%=10;j+=a*k;k=k*10;printf(%d,a); case 1: a=i;j+=a*k;k=k*10;printf(%d,a); switch(n) case 5: a=j/10000;j%10000;printf(%d,a); case 4: a=j/1000;j%1000;printf(%d,a); case 3: a=j/100;j%100;printf(%d,a); case 2: a=j/10;j%10;printf(%d,a); case 1:printf(%dn,j); getch();; (2) 编写程序,从键盘接收一个简单的表示四则运算的表达式,

18、计算结果并输出。例如,输入“20+32”,输出“20+32=52”。分别使用switch和else if语句。/*求解简单的四则运算表达式 */#include int main(void) double value1, value2; char operator; printf(type in an expression: ); /* 提示输入一个表达式 */ scanf(%lf%c%lf, &value1, &operator, &value2); switch(operator) case +: printf(%.2fn, value1+value2); break; case -: p

19、rintf(%.2fn, value1-value2); break; case *: printf(%.2fn, value1*value2); break; case /: printf(%.2fn, value1/value2); break; default: printf(unknown operatorn); break; getch();3、实验报告要求(1) 各题程序、运行结果及分析; (2)实验总结。实验六:循环结构程序设计(一)1、实验目的(1)熟练掌握循环程序设计思想;(2)掌握调试程序的一些技巧。2、实验内容(1)编程计算 s=1*2+2*3+39*40#include

20、int main(void) int i,t,s=0; for(i=1;i=39;i+) t=i*(i+1); s=s+t; printf(%d,s); getch(); (2)编程计算 s=1!+2!+n!/*s=1!+2!+.n!*/#includeint main(void) int i,j,t,n; double s=0; printf(enter n:); scanf(%d,&n); for(i=1;i=n;i+) t=1; for(j=1;j=i;j+) t=t*j; s=s+t; printf(%.2f,s); getch();(3) 编写程序,计算如果每年按照年利率i(例如2%

21、),投资s(例如5000),在第y(例如10)年得到的总钱数m。公式:m=s*(1+i)y #include#includeint main(void) int s,y; double i,m; printf(enter i,y,s:); scanf(%lf%d%d,&i,&y,&s); m=s*pow(1+i),y); printf(%.2f,m); getch();(4) 编程输出九九乘法表。/*输出九九乘法表*/#includeint main(void) int i,j; for(i=1;i=9;i+) for(j=1;j=i;j+) printf(%d*%d=%2d ,j,i,j*i

22、); printf(n); getch();3、实验报告要求(1) 各题程序、运行结果及分析; (2)实验总结。实验七:循环结构程序设计(二)1、实验目的(1)熟练掌握嵌套循环程序设计思想; (2)掌握调试程序的一些技巧。2、实验内容(尽量用嵌套循环实现)(1)编程计算 ,其中实数由键盘输入,计算直至最后一项小于10-5。-1=x=1#include#includedouble fact(int n);int main(void) int i,n,x; double sum,item,a,b; printf(enter x:); scanf(%d,&x); sum=0; item=1; i=1

23、; while(fabs(item)=0.00001) item=pow(x,i)*1.0/fact(i); sum=sum+item; i+; printf(sum=%.2lf,sum); getch(); return 0;double fact(int n) int i; double result; result=1; for(i=1;i=n;i+) result=result*i; return result;(2)输入两正数a和n,求a+aa+aaa+aaa(n个a)之和。例如输入2和3,输出246(2+22+222)。#includeint main(void) int a,n,

24、i=1; long sn=0,tn=0; printf(enter a: n:); scanf(%d%d,&a,&n); while(i=n) tn=tn+a; sn=sn+tn; tn=tn*10; i+; printf(%dn,sn); getch();(3)编写程序,将一个正整数分解质因数。例如,输入90,输出2*3*3*5#includeint main(void) int m,i,n; printf(enter m:); scanf(%d,&m); n=m; for(i=2;i=m;i+) while(m!=i) if(m%i=0) printf(%d*,i); m=m/i; els

25、e break; printf(%d=%d,m,n); getch(); return 0;3、实验报告要求(1) 各题程序、运行结果及分析; (2)实验总结。实验八:综合实验(一)1、设圆半径为r,圆柱高为h,分别由键盘初始化,求圆的周长、面积,圆球表面积、圆球体积,圆柱体积。#includeint main(void) double r,h,l,s1,s2,v1,v2,pi; pi=3.14; printf(enter r:h:); scanf(%lf%lf,&r,&h); l=2*pi*r; s1=pi*r*r; s2=4*pi*r*r; v1=4/3*pi*r*r*r; v2=pi*h

26、*r*r; printf(l=%lf s1=%lf s2=%lf v1=%lf v2=%lfn,l,s1,s2,v1,v2); getch(); return 0;2、由键盘接收五个英文字母,然后将其中的大写转换成小写字母、小写转换成大写字母输出。#includeint main(void) int i; char ch; printf(enter 5 letter:); for(i=1;i=5;i+) ch=getchar(); if(ch=a) printf(%c,ch+32); else printf(%c,ch-32); getch(); return 0; 3、编程计算分段函数:,x

27、由键盘输入。#includeint main(void) double x,y; printf(enter x:); scanf(%lf,&x); if(x1) y=x; else if(x10) y=2*x-1; else y=3*x-11; printf(%.lf,y); getch(); return 0; 实验九:综合实验(二)1、编程将输入的三个整数从小到大排序输出。#include stdio.hint main(void) int i,index,k,n,temp; int a3; printf(enter 3 integers:); for(i=0;i3;i+) scanf(%

28、d,&ai); for(k=0;k2;k+) index=k; for(i=k+1;i3;i+) if(aiaindex) index=i; temp=aindex; aindex=ak; ak=temp; printf(after sorted:); for(i=0;i3;i+) printf(%d ,ai); printf(n); getch (); return 0 ;2、编程将输入的带一位小数的实数进行四舍五入后按整数输出。#includeint main(void) float a; printf(please input a:); scanf(%f,&a); a=(int)(a+0

29、.5); printf(a=%fn,a); getch(); return 0;3、请为“百鸡问题”编写程序。百鸡问题:“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百元买百鸡,问鸡翁、母、雏各几只”。#include int main(void) int x,y,z; for(x=0;x=100;x+) for(y=0;y=100;y+) for(z=0;z=100;z+) if(x+y+z=100&5*x+3*y+z/3=100) printf(x=%d y=%d z=%dn,x,y,z); getch(); return 0;实验十:综合实验(1、编程输出以下图案(用循环实现)abcdefghijklm*nopqrstuvwxyzbcdefghijklm*nopqrstuvwxy cdefghijklm*nopqrstuvwx lm*no m*n * #includeint main(void) int i,j; for(j=1;j=14;j+) for(i=1;i=j;i+) printf( ); for(i=64+j;i=m;i+) printf(%c,i); printf(*); for(i=n;i=91-j;i+) printf(%c,i)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论