工学大一C语言上机实验报告.docx

上传人:b****8 文档编号:23852595 上传时间:2023-05-21 格式:DOCX 页数:34 大小:1.14MB
下载 相关 举报
工学大一C语言上机实验报告.docx_第1页
第1页 / 共34页
工学大一C语言上机实验报告.docx_第2页
第2页 / 共34页
工学大一C语言上机实验报告.docx_第3页
第3页 / 共34页
工学大一C语言上机实验报告.docx_第4页
第4页 / 共34页
工学大一C语言上机实验报告.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

工学大一C语言上机实验报告.docx

《工学大一C语言上机实验报告.docx》由会员分享,可在线阅读,更多相关《工学大一C语言上机实验报告.docx(34页珍藏版)》请在冰豆网上搜索。

工学大一C语言上机实验报告.docx

工学大一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;

}

运行结果:

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

当前位置:首页 > 高中教育 > 语文

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

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