实验1参考答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验1:循环结构程序设计

实验目的:

1.熟悉VC++6.0的运行环境,掌握C程序的执行方法;

2.掌握三种基本数据类型、部分运算符号和常用函数;

3.掌握三种循环控制语句及break和continue语句的使用方法;

4.掌握循环结构的嵌套及正确控制计数型循环结构次数的方法。

实验内容:

程序1:搬砖问题:36块砖,36人搬,男搬4,女搬3,两个小孩抬1砖,要求一次搬完,问男、女和小孩各若干?

/*#include

main()

{

int men,women,children;

men=0;

while(men<=8)

{women=0;

while(women<=11)

{children=36-men-women;

if((men*4+women*3+children/2==36)&&children%2==0)

printf("men=%d,women=%d,children=%d\n",men,women,children);

women++;}

men++;}

}

*/

#include

main()

{

int men,women,children;

men=0;

for(men=0;men<=9;men++)

for(women=0;women<=12;women++)

{children=36-men-women;

if((men*4+women*3+children/2==36)&&children%2==0)

printf("men=%d,women=%d,children=%d\n",men,women,children);

}

}

程序2 打印形状为直角三角形的乘法口诀。

1*1=1

2*1=2 2*2=4

3*1=3 3*2=6 3*3=9

…………………………

………………………………

9*1=9…………………………………………………………

#include

main()

{int i,j;

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

{for(j=1;j<=i;j++)

printf("%d*%d=%2d ",i,j,i*j);

printf("\n");}

}

程序3 求1000以内的所有素数。

#include

#include

void main( )

{

int m,i,k;

for(m=3;m<1000;m=m+2)

{k=sqrt(m);

for(i=2;i<=k;i++)

if(m%i==0) break;

if(i>k) printf("%d\t",m);

}

}

程序4:计算和统计旅客运费程序。

由键盘输入旅客行李重量(w),按公式:

若( w<=50kg )f=1.5*w ,若(w>50kg)f=1.5*50 + 2.8*(w-50) ( w>50kg ) 计算运费,要求:

(1)打印每位旅客的顺序号,行李重量,应付运费;

(2)假定每天最多办理100人的行李托运手续或当w≤0时循环结束, 下班时打印出全天的运费总收入和办理的总人数。

方法一(while结构)

#include

main( )

{int num=0;

float w,f,t=0;

printf("请输入该名旅客行李的重量:") ;

scanf("%f",&w);

while(num<=100&&w>0)

{if(w<=50) f=w*1.5;

else f=1.5*50 + 2.8*(w-50); num++;

printf("旅客编号为:%d,应付金额为:%.2f元,行李重量为:%.2fkg\n",num,f,w); t=t+f;

printf("请输入该名旅客行李的重量:") ;

scanf("%f",&w);

}

printf("t=%.2f,num=%d\n",t,num);

}

方法二(do-while结构)

#include

main( )

{int num=0;

float w,f,t=0;

printf("请输入该名旅客行李的重量:") ;

scanf("%f",&w);

do

{if(w<=50) f=w*1.5;

else f=1.5*50 + 2.8*(w-50); num++;

printf("旅客编号为:%d,应付金额为:%.2f元,行李重量为:%.2fkg\n",num,f,w); t=t+f;

printf("请输入该名旅客行李的重量:") ;

scanf("%f",&w);

} while(num<=100&&w>0);

printf("t=%.2f,num=%d\n",t,num);

}

方法三(for结构)

#include

main( )

{int num;

float w,f,t=0;

printf("请输入该名旅客行李的重量:") ;

scanf("%f",&w);

for(num=0;num<=100&&w>0; num++)

{

if(w<=50) f=w*1.5;

else f=1.5*50 + 2.8*(w-50);

printf("旅客编号为:%d,应付金额为:%.2f元,行李重量为:%.2fkg\n",num,f,w); t=t+f;

printf("请输入该名旅客行李的重量:") ;

scanf("%f",&w);

}

printf("t=%.2f,num=%d\n",t,num);

}

相关文档
最新文档