1、程序设计基础2程序设计基础实验指导 计科1012班实验一 C开发环境1. 求园的面积#includevoid main() float area,r; printf(“input r for the programming”); scanf(“%f”,&r); area=3.14*r*r; printf(“the area is %fn”,area);2. 输入任意三个数求它们的和 ,平均值#includevoid main() float a,b,c,sum=0; printf(“input a b andc”); scanf(“%f%f%f”,&a,&b,&c); sum=a+b+c; p
2、rintf(“sum is%fn”,sum); #includevoid main() float a,b,c,s; printf(“input a,b,c”); scanf(“%f%f%f”,&a,&b,&c); s=(a+b+c)/3; printf(“s is %fn”,s);3. 用常量定义圆周率。求一球的表面积,体积#includevoid main() float r,pi=3.14,s,v; printf(“input r for the programming”); scanf(“%f”,&r); s=4*pi*r*r; v=4/3.0*pi*r*r*r; printf(“s
3、is %fnv is %fn”,s,v);4. 物理上的平抛运动,求任意时刻的水平与垂直位移x,y#includevoid main() float v,t,x,y, g=9.8; printf(“input v and t”); scanf(“%f%f”,&v,&t); x=v*t;y=1.0/2*g*t*t; printf(“x=%fny=%fn”,x,y);5. 求一个圆柱体的表面积和体积。#includevoid main() float r,h,s,v,pi=3.14; scanf(“%f%f”,&r,&h); s=2*pi*r*h+2*pi*r*r; v=pi*h*r*r; pri
4、ntf(“v is %fn s is %fn”,v,s); 6.十进制,八进制。十六进制的表示法。#include#includevoid main() int a,b,c; printf(“十进制n”); a=1,b=2;printf(“a=%dn b=%dn”,a,b);printf(“八进制n”); a=07,b=010;printf(“a=%dn b=%dn “,a,b);printf(“十六进制n”);a=0x39, b=0x39;printf(“a=%dn b=%dn”,a,b);getch(); 实验二.表达式的输入与输出1. 将华氏温度转换为摄氏温度#includevoid m
5、ain() double f,c; printf(“输入华氏温度”); scanf(“%lf”,&f); c=5*(f-32)/9.0; printf(“c is %lf”,c);2. 将一个三位数各位置上数字分开将这三位数反序输出。#includevoid main()int a,b=0,x;scanf(“%d”,&a);while(a0) x=a%10; b=b*10+x; a/=10;printf(“%d”,b);3.输入两个角度x,y算 注意弧度不是角度,需要换成角度。#include#includevoid main() float x,y,a,b,pi=3.14,s; printf
6、(“input x and y”); scanf(“%f%f”,&x,&y); a=x/180*pi; b=y/180*pi; s=sin(fabs(x)+fabs(y)/sqrt(cos(fabs(x+y); printf(“s is %fn”,s);4输入相应求z=(sinx +cos|y|)/(x+y)#include#includevoid main() float x,y,z; printf(“ input x and yn”); scanf(“%f%f”,&x,&y);z=(sin(x)+cos(fabs(y) )/(x+y);printf(“ z is %fn”,z); 5输出a
7、的ASCII#includevoid main() int a; a=a;priintf(“%a”,a);6. 输入a对应的大写字母#includevoid main()int a; a=a; a=a-32;printf(“%c”,a);7. 输入字符输出其ASCII值#includevoid main() char a;printf(“输入一英文字母”);scanf(“%c”,&a);printf(“%dn”,a); 实验三. 选择结构程序设计1.输入两个整数输出较大的.输三个数求三个数中的最大值#includevoid main() int a,b,max; scanf(“%d%d”,&a
8、,&b); if(ab) max =a; else max=b; printf(“max is %d”,max);#includevoid main() float a,b,c,max; scnf(“%f%f%f”,&a,&b,&c); if(ab&ac) max=a; else if(bc) max=b; else max=c; printf(“max is %f”,max);2输入两个数 输出它们中较小的数#includevoid main() float a,b,min;scanf(“%f%f”,&a,&b);if(ab) min=b;else min=a;printf(“min is
9、%f”,min) 3分段函数. 分别使用单分支及嵌套实现。单分支1. #includevoid main() int x,y; printf(“input x”); scanf(“%d”,&x); if(x=0) y=x+100; printf(“y is %d”,y);2. #includevoid main() int x,y; printf(“input x”); scanf(“%d”,&x); if(x=-10&x10) y=x+100; printf(“y is %d”,y);3. #includevoid main() int x,y; printf(“input x”); sca
10、nf(“%d”,&x); if(x=-10&x=0&x10) y=x+100; printf(“ y is %d”,y); 双分支 1.#includevoid main() int x,y; printf(“input x”); scanf(“%d”,&x); if(x0) y=x-10; else y=x+100; printf(“y is %d”,y);2. #includevoid main() int x,y; printf(“input x”); scanf(“%d”,&x); if(x=10) if(x-10) y=x-10; else y=x; else y=x+100; pr
11、intf(“y is %d”,y);3. #includevoid main() int x,y; printf(“input x”); scanf(“%d”,&x); if (x0) if(x-10) y=x-10; else y=x-3; else if (x=0&x=10) y=x+3; else y=x+100; printf(“y is %d”,y);4输入三个数,将这三个数排序,按从 大到小的次序输出。#includevoid main() int x,y,z,temp; printf(“input x y zn”); scanf(“%d%d%d”,&x,&y,&z); if(xy
12、)temp=x,x=y,y=temp; if(xz)temp=x,x=z,z=temp; if(yz)temp=y,y=z,z=temp; printf(“%dt %dt %dn”,x,y,z);5.输入3个整数a,b,c 输出他们最大的数#includevoid main() int a,b,c,max; printf(“输入3个整数n”); scanf(“%d%d%d”,&a,&b,&c); max=a; if(maxb) max=b; if(maxc) max=c;printf(“最大数是%d/n”,max);实验四 循环结构程序设计11.S=1+2+3+n#include #inclu
13、devoid main() void main() int i,sum=0,n; int i=1,sum=0,n;printf(“input nn”); printf(“input nn”);scanf(“%d”,&n); scanf(“%d”,&n);for(i=0;i=n;i+) while(i=n) sum+=i;i+; sum+=i; i+;printf(“sum is%d”,sum); printf(“sum is %d”,sum); 2.#include #includevoid main() void main() int i; float sum=0; float n=1000
14、,sum=0; int i=1; scanf(“%f”,&n); while(i=1000) for(i=1;i=n;i+) sum+=1.0/i;i+;sum+=float(i)/i; printf(“%f”,sum);printf(“sum is %f”,sum); 3. 1、-2、3、-4,前100项的和#include #includevoid main() void main() int i=1,sum=0; int i=1,sum=0,t=1; while(i=100) while(i=100)if(i%2=0) sum=sum+i*t;sum=sum-i; t=-t;i+;els
15、e sum+=i;i+ printf(“%d”,sum); printf(“%d”,sum); 4.#includevoid main() float sum=0; int i=1; while(i=99) sum+=float(i)/(i+1); i+;printf(“%f”,sum);5. 前50项和.#includevoid main() float sum=0; int x,y,p,count=1; x=1,y=2; while (count=50) sum+=float(x)/y; p=x; x=y ; y=p+x; count+;printf(“sum is %f”,sum);6.
16、求整数n的阶乘(n!)。#include #includevoid main() void main() int n; double fac=1; int i=1,fac=1; int i,n; scanf(“%d”,&n); scanf(“%lf”,&n);do fac*=i; for(i=1;i=n;i+)i+; fac*=i;printf(“fac is %d”,fac); i+; printf(“fac is %lf”,fac); 8. 求1!+2!+3!+50!#includevoid main() double fac=1,sum=0;int i,n;scanf (“%d”,&n)
17、;for(i=1;i=50;i+) fac*=i; sum+=fac;printf(“fac is %d”,fac);9. 求1*2、2*3、3*4、前50项的和#includevoid main() int i=1,j=2,sum=0; while(i=50&j=51) sum+=i*j; i+; j+;printf(“sum is %d”,sum);8 输入一个任意的整数,求其各数位上的数字的和,求该整数对应的反序整数9. 将一个十进制整数转换成二进制、八进制、十六进制的数10求一个整数的所有质因子。如8: 2 ; 15: 3、5.11.判断一个整数是否为素数(除了分解1和他本省相乘 无其他因子)#include#includevoid main() int i,m; scanf(%d,&m);for(i=2;im;i+) if (m%i=0) printf(%d不是素数,m); return; printf(%d是素数,m);12求一个整数的所有因子。如8: 1,2,4,8#includevoid main() int x,i=1; scanf(“%d”,&x);while(i=x) if (x%i=0) printf(“%5d”,i); i+;13.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1