c语言上机实验答案46.docx

上传人:b****5 文档编号:6199529 上传时间:2023-01-04 格式:DOCX 页数:14 大小:17.85KB
下载 相关 举报
c语言上机实验答案46.docx_第1页
第1页 / 共14页
c语言上机实验答案46.docx_第2页
第2页 / 共14页
c语言上机实验答案46.docx_第3页
第3页 / 共14页
c语言上机实验答案46.docx_第4页
第4页 / 共14页
c语言上机实验答案46.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

c语言上机实验答案46.docx

《c语言上机实验答案46.docx》由会员分享,可在线阅读,更多相关《c语言上机实验答案46.docx(14页珍藏版)》请在冰豆网上搜索。

c语言上机实验答案46.docx

c语言上机实验答案46

实验四循环结构程序设计(4学时)

一、实验方式:

一人一机

二、实验目的:

1、熟练掌握while语句、do-while语句和for语句。

2、练习并掌握循环结构的嵌套形式。

3、掌握循环结构的程序设计方法。

三、实验内容:

说明:

前四题为必做题目,后两题为选做题目。

1、从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。

(实验指导书P117)

2、求所有的水仙花数。

水仙花数是一个3位数的自然数,该数各位数的立方和等于该数本身。

(实验指导书P118)

3、判断输入的某个数是否为素数。

若是,输出YES,否则输出NO。

(书P123)

4、计算π的近似值。

公式如下:

π/4=1-1/3+1/5-1/7+……,直到最后一项的绝对值小于10-6为止。

(书P123)

5、计算s=1!

+2!

+……+20!

的值并输出。

6、输入10个整数,统计并输出其中正数、负数和零的个数。

四、实验步骤与过程:

1.

#include

#include

voidmain()

{

floatx,max,min;

printf("pleaseinputscores:

");

scanf("%f",&x);

max=min=x;

while(x>=0)

{

if(x>max)max=x;

if(x

scanf("%f",&x);

}

printf("\nmax=%f\nmin=%f\n",max,min);

getch();

}

2.

#include

voidmain()

{

intx,y,z;

intk=100;

while(k<1000)

{

x=k/100;

y=(k/10)%10;

z=k%10;

if(k==x*x*x+y*y*y+z*z*z)

printf("%d\n",k);

k++;

}

}

3.

#include

#include

voidmain()

{

inti,x,yes,a;

printf("enterintegernumber:

");

scanf("%d",&x);

yes=1;

i=2;

a=(int)sqrt((double)x);

while(yes&&i<=a)

{

if(x%i==0)yes=0;

i=i+1;

}

printf("%d",x);

if(yes)

printf("YES\n");

else

printf("NO\n");

getchar();

}

4.

#include

#include

voidmain()

{floatpi,t,n;

intsign=1;

pi=0.0;n=1.0;t=1.0;

while(fabs(t)>=1e-6)

{t=sign/n;

pi+=t;

n+=2;

sign=-sign;

}

pi=pi*4;

printf("pi=%f\n",pi);

getchar();

}

5.

#include

voidmain()

{

inti,j,n;

doublem,s=0;

for(i=1;i<=20;i++)

{

for(j=1,m=1;j<=i;j++)

m*=j;

s+=m;

}

printf("resultis:

%g",s);

getchar();

}

6.

#include

voidmain()

{

inta,b,c,n,i;

a=0;

b=0;

c=0;

printf("pleaseentertennumbers:

");

for(i=1;i<=10;i++)

{scanf("%d",&n);

if(n==0)

a++;

else

if(n>0)

b++;

else

c++;}

printf("零的个数为:

%d",a);

printf("正数的个数为:

%d",b);

printf("负数的个数为:

%d",c);

}

实验五综合实验1:

结构化程序设计(2学时)

一、实验方式:

一人一机

二、实验目的:

1、进一步掌握选择结构、循环结构的编程特点。

2、掌握C语言的结构化程序设计思想。

3、学习利用循环结构实现的一些常用算法(如穷举、迭代、递推等)。

三、实验内容:

说明:

前两题为必做题目,后两题为选做题目。

1、编一程序,对于给定的一个百分制成绩,输出对应A,B,C,D,E表示的的等级成绩。

设:

90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。

(书P93)

2、百马百担问题。

(实验指导书P121)

3、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

4、输出如下图案:

*

***

*****

*******

*****

***

*

四、实验步骤与过程:

1.

#include

voidmain()

{

intscore,temp,logic;

chargrade;

logic=1;

while(logic)

{printf("inputscore:

");

scanf("%d",&score);

if((score>100)||(score<0))

printf("\nerror,inputagain!

\n");

else

logic=0;

printf("\n");

}

if(score==100)

temp=9;

else

temp=(score-score%10)/10;

switch(temp)

{

case9:

grade='A';break;

case8:

grade='B';break;

case7:

grade='C';break;

case6:

grade='D';break;

case5:

case4:

case3:

case2:

case1:

case0:

grade='E';

}

printf("scoreis:

%d,thegradeis:

%c.\n",score,grade);

}

2.

#include

voidmain()

{

intm,n,k;

intsum=0;

printf("各种驮法如下:

\n");

for(m=1;m<=100;m++)

for(n=1;n<=100-m;n++)

{

k=100-m-n;

if(k%2==0&&3*m+2*n+0.5*k==100)

{

printf("大马%3d匹;中马%3d匹;小马%3d匹.\n",m,n,k);

sum++;

}

}

printf("共有%d种驮法.\n",sum);

}

3.

#include

voidmain()

{

intm=0,n=0,k=0,j=0;

charx;

printf("请输入一行字符:

\n");

scanf("%c",&x);

while(x!

=10)

{if(x>=48&&x<=57)

m++;

elseif(x>=65&&x<=90||x>=97&&x<=122)

n++;

elseif(x==32)

j++;

elsek++;

scanf("%c",&x);}

printf("这行字符中有数字%d个,英文字母%d个,空格%d个,其他字符%d个。

\n",m,n,j,k);

}

4.

#include

voidmain()

{

inti,j,k;

for(i=1;i<=4;i++)

{

for(j=1;j<=20-i;j++)printf("");

for(k=1;k<=2*i-1;k++)printf("*");

printf("\n");

}

for(i=3;i>0;i--)

{

for(j=1;j<=20-i;j++)printf("");

for(k=1;k<=2*i-1;k++)printf("*");

printf("\n");

}

getchar();

}

实验六函数程序设计(4学时)

一、实验方式:

一人一机

二、实验目的:

1、掌握C语言中函数的三要素:

函数定义、函数调用和函数说明。

2、掌握通过参数在函数间传递数据的方法。

3、掌握全局变量、局部变量、动态变量、静态变量的概念和使用方法。

三、实验内容:

说明:

前四题为必做题目,后两题为选做题目。

1、从键盘输入三角形的3条边,调用三角形面积函数求出其面积,并输出结果。

(实验指导书P130)

2、输入整数n,输出高度为n的等边三角形。

当n=5时的等边三角形如下:

(实验指导书P134)

*

***

*****

*******

*********

3、输入并运行以下程序,分析运行结果。

#include

inta=5;

intb=7;

voidmain()

{inta=4,b=5,c;

c=plus(a,b);

printf(“a+b=%d\n”,c);

}

plus(intx,inty)

{intz;

z=x+y;

return(z);

}

4、求500以内的所有亲密数对。

若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数对。

(实验指导书P136)

5、输入并运行以下程序,分析运行结果。

#include

intd=1;

fun(intp)

{staticintd=5;

d+=p;

printf(“%d”,d);

return(d);

}

voidmain()

{inta=3;

printf(“%d”,fun(a+fun(d)));

}

6、设计一个函数,输出整数n的所有素数因子。

(书P157)

四、实验步骤与过程:

1.

#include

#include

floatarea(floata,floatb,floatc)

{

floats,p,area;

s=(a+b+c)/2;

p=s*(s-a)*(s-b)*(s-c);

area=sqrt(p);

return(area);

}

voidmain()

{

floatx,y,z,ts;

scanf("%f,%f,%f",&x,&y,&z);

if((x+y>z)&&(x+z>y)&&(y+z>x))

{ts=area(x,y,z);

printf("area=%f\n",ts);

}

elseprintf("dataerror!

");

}

2.

#include

voidtrangle(intn)

{

inti,j;

for(i=0;i

{

for(j=0;j<=20-i;j++)

printf("");

for(j=0;j<=2*i;j++)

printf("*");

putchar('\n');

}

}

voidmain()

{

intn;

printf("请输入一个整数:

");

scanf("%d",&n);

printf("\n");

trangle(n);

}

3.

#include

inta=5;

intb=7;

voidmain()

{inta=4,b=5,c;

c=a+b;

printf("a+b=%d\n",c);

}

plus(intx,inty)

{intz;

z=x+y;

return(z);

}

4.

#include

intfacsum(intm)

{

intsum=1,f=2;

while(f<=m/2)

{

if(m%f==0)

{sum=sum+f;}

f++;

}

returnsum;

}

voidmain()

{

intm=3,n,k;

while(m<=500)

{

n=facsum(m);

k=facsum(n);

if(m==k&&m<=n)

printf("亲密对数是:

%d\n%d\n",m,n);

m++;

}

}

5.

#include

intd=1;

fun(intp)

{staticintd=5;

d+=p;

printf("%d",d);

return(d);

}

voidmain()

{inta=3;

printf("%d",fun(a+fun(d)));

}

6.

#include

intprime(intn)

{

inti,flag=1;

for(i=2;i<=n/2;i++);

if(n%i==0)

{

flag=0;

returnflag;

}

returnflag;

}

voidfactor(intn)

{

inti;

i=2;

while(i<=n)

{

if((n%i==0)&&prime(i))

{

printf("%d",i);

n=n/i;

continue;

}

i++;

}

}

voidmain()

{

intnum;

printf("Enternum:

");

scanf("%d",&num);

printf("primefactoris:

\n");

factor(num);

}

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

当前位置:首页 > 工程科技 > 电子电路

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

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