工学大一C语言上机实验报告.docx
- 文档编号:23852595
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:34
- 大小:1.14MB
工学大一C语言上机实验报告.docx
《工学大一C语言上机实验报告.docx》由会员分享,可在线阅读,更多相关《工学大一C语言上机实验报告.docx(34页珍藏版)》请在冰豆网上搜索。
工学大一C语言上机实验报告
C语言程序设计实验报告
姓名:
班级:
学号:
实验内容:
编写一个程序,从键盘输入任意一个五位数,把这个数值分解为单个数字,然后打印出每一个数字(每个数字之间用三个空格分开)。
例如用户输入了42339,屏幕输出结果为:
42339
【提示】巧妙使用/和%两种运算符。
源代码:
#include
voidmain()
{
longintnum,a,b,c,d,e;
scanf("%ld",&num);
a=num/10000;
b=num%10000/1000;
c=num%1000/100;
d=num%100/10;
e=num%10;
printf("%ld%ld%ld%ld%ld\n",a,b,c,d,e);
}
运行结果:
实验内容:
已知三角形三边a,b,c,计算三角形的面积。
注:
三角形面积公式为area=[s(s-a)(s-b)(s-c)]的1/2次幂
S=1/2*(a+b+c)
源代码:
#include
#include
voidmain()
{
doublearea,s,a,b,c;
scanf("%lf%lf%lf",&a,&b,&c);
s=(a+b+c)/2;
if(a>0&&b>0&&c>0)
{
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%lf\n",area);
}
else
printf("输入错误,三角形边长不能为负数或0\n");
}
运行结果:
实验内容:
输入圆的半径,计算出圆的周长和面积
源代码:
#include
#include
voidmain()
{
doubler,z,area,pi=3.14159;
scanf("%lf",&r);
if(r>0)
{
z=2*pi*r;
area=pow(r,2)*pi;
printf("圆面积为%lf周长为%lf\n",area,z);
return0;
}
else
printf("输如错误,圆的半径不能为负数或0\n");
}
运行结果:
实验内容:
•体型判断。
按“体指数”对肥胖程度进行划分:
体指数t=体重w/(身高h)2
(w单位为公斤,h单位为米)
–当t<18时,为低体重;
–当t介于18和25之间时,为正常体重;
–当t介于25和27之间时,为超重体重;
–当t>=27时,为肥胖。
•编程从键盘输入你的身高h和体重w,根据给定公式计算体指数t,然后判断你的体重属于何种类型。
•用3种方法编程:
–算法1:
用不带else子句的if语句编程
–算法2:
用在if子句中嵌入if语句的形式编程
–算法3:
用在else子句中嵌入if语句的形式编程
算法1:
源代码:
#include
#include
intmain()
{
floatw,h;
doublet;
scanf("%f%f",&h,&w);
if(w<=0||h<=0)
{
printf("输入错误,身高体重不能为负数或0\n");
gotoloop;
}
{
t=w/pow(h,2);
if(t<18)
{
printf("低体重\n");
gotoloop;
}
if(t>=18&&t<25)
{
printf("正常体重\n");
gotoloop;
}
if(t>=25&&t<27)
{
printf("超重体重\n");
gotoloop;
}
if(t>=27)
{
printf("肥胖\n");
}
}
loop:
return0;
}
运行结果:
算法2:
源代码:
#include
#include
intmain()
{
floatw,h;
doublet;
scanf("%f%f",&h,&w);
if(w<=0||h<=0)
{
printf("输入错误,身高体重不能为负数或0\n");
gotoloop;
}
{
t=w/pow(h,2);
if(t<25)
{
if(t>=18)
{
printf("正常体重\n");
gotoloop;
}
printf("低体重\n");
}
if(t>=25)
{
if(t<27)
{
printf("超重体重\n");
gotoloop;
}
printf("肥胖\n");
}
}
loop:
return0;
}
运行结果:
算法3:
源代码:
#include
#include
intmain()
{
floatw,h;
doublet;
scanf("%f%f",&h,&w);
if(w<=0||h<=0)
printf("输入错误,身高体重不能为负数或0\n");
else
{
t=w/pow(h,2);
if(t<18)
printf("低体重\n");
else
{
if(t>=18&&t<25)
printf("正常体重\n");
else
{
if(t>=25&&t<27)
printf("超重体重\n");
elseprintf("肥胖\n");
}
}
}
return0;
}
运行结果:
实验内容:
编写一个程序,计算-32768~+32767之间任意整数(由键盘输入)中各位奇数的平方和。
源代码:
#include
intmain()
{
inta,b=0,c=0,i;
scanf("%d",&a);
for(i=0;i<5;i++)
{
if(a%2!
=0)
{
c=a%10;
b=b+c*c;
}
a/=10;
}
printf("%d\n",b);
return0;
}
运行结果:
实验内容:
设有一四位数abcd=(ab+cd)2,编写一个程序,求a、b、c、d。
源代码:
#include
#include
intmain()
{
intnum,a,b,c,d;
for(num=1000;num<=9999;num++)
{
a=num/1000;
b=num%1000/100;
c=num%100/10;
d=num%10;
if(num==pow((10*a+b+10*c+d),2))
printf("a=%db=%dc=%dd=%d\n",a,b,c,d);
}
return0;
}
运行结果:
实验内容:
鸡兔问题:
鸡兔共30只,脚共有90个。
编写一个程序,求鸡、兔各多少只。
源代码:
#include
intmain()
{
intx,y;
for(x=0;x<=45;x++)
{
for(y=0;y<=22;y++)
if(x+y==30&&2*x+4*y==90)
printf("鸡有%d只,兔有%d只\n",x,y);
}
return0;
}
运行结果:
实验内容:
编写一个程序,求S值(n由键盘输入):
(程序检验参考:
x=6.66,n=8时,s=40.955;x=6.66,n=15时,s=-1.511
源代码:
#include
#include
intmain()
{
doublejiecheng(int);
doubles=0,x=6.66;
intn,i;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
s=s+pow(-1,i)*pow(x,i)/jiecheng(i);
}
printf("%.3f\n",s);
return0;
}
doublejiecheng(intx)
{
doublef;
if(x==0||x==1)
f=1;
elsef=jiecheng(x-1)*x;
returnf;
}
运行结果:
实验内容:
编写一个程序,求前n项之和S值,其中n≥1,x≠0。
(n由键盘输入):
12x35x813x
S=──-──+──-──+──-──+...
2x35x813x21
(程序检验参考:
x=6.66,n=8时,s=-16.492;x=6.66,n=15时,s=-28.469)
源代码:
#include
#include
intmain()
{
inta=1,b=2,n,i,t=0;
doubles=0,x;
scanf("%lf%d",&x,&n);
if(n>=1)
{
for(i=1;i<=n;i++)
{if(i%2)
{
s+=pow(-1,i+1)*a/(b*x);
t=a;
a=b;
b=t+b;
}
else
{
s+=pow(-1,i+1)*a*x/b;
t=a;
a=b;
b=t+b;
}
}
printf("%f\n",s);
}
return0;
}
运行结果:
实验内容:
利用泰勒级数sin(x)≈
计算sin(x)的值。
要求最后一项的绝对值小于10-5,并统计出此时累加了多少项。
(程序检验参考:
x=6时,sin(x)=-0.279415,count=13)
源代码:
#include
#include
intmain()
{
doublejiecheng(int);
doubles=0,x;
inti,count=0;
scanf("%lf",&x);
for(i=1;;i+=2)
{
s+=pow(-1,count)*pow(x,i)/jiecheng(i);
count+=1;
if(fabs((pow(x,i)/jiecheng(i))) break; } printf("sin(x)=%fcount=%d\n",s,count); return0; } doublejiecheng(inti) { doublef; if(i==0||i==1) f=1; elsef=jiecheng(i-1)*i; returnf; } 运行结果: 实验内容: 三色球问题。 若一个口袋中放有12个球,其中有3个红色的,3个白色的,6个黑色的,从中任取8个球,问共有多少种不同的颜色搭配? 源代码: #include intmain() { inti,j,k,way=0; for(i=0;i<=3;i++) { for(j=0;j<=3;j++) { for(k=0;k<=6;k++) { if(i+j+k==8) way=way+1; } } } printf("way=%d\n",way); return0; } 运行结果: 实验内容: 编程打印以下图案 源代码: #include intmain() { inti,j; for(j=1;j<=4;j++) { for(i=1;i<=4-j;i++) { printf(""); } printf("******\n"); } return0; } 运行结果: 源代码: #include intmain() { inti,j; for(j=1;j<=4;j++) { for(i=1;i<=2*j-1;i++) printf("*"); printf("\n"); } return0; } 运行结果: 源代码: #include intmain() { inti,j,m,n; for(j=1;j<=7;j++) { if(i<5) { m=4-j;n=2*j-1; } else { m=j-4; n=(15-2*j); } for(i=1;i<=m;i++) printf(""); for(i=1;i<=n;i++) printf("*"); printf("\n"); } return0; } 运行结果: 实验内容: 输出下三角形乘法九九表 123456789 --------------------------------------- 1 24 369 481216 510152025 61218243036 7142128354249 816243240485664 91827364554637281 源代码: #include intmain() { inti,j,k; printf("123456789\n"); printf("---------------------------------------\n"); for(i=1;i<10;i++) { for(j=1;j<=i;j++) { printf("%d",k=i*j); } printf("\n"); } return0; } 运行结果:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工学 大一 语言 上机 实验 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)