好文档 - 专业文书写作范文服务资料分享网站

C语言程序设计实践实验题目.doc

天下 分享 时间: 加入收藏 我要投稿 点赞

绥化学院程序设计实践实验报告范例 参考

实验题目:循环结构程序设计

实验目的:

1.熟悉VC++6.0的运行环境,掌握C程序的执行方法; 2.掌握三种基本数据类型、部分运算符号和常用函数;

3.掌握三种循环控制语句及break和continue语句的使用方法; 4.掌握循环结构的嵌套及正确控制计数型循环结构次数的方法。 实验内容:

程序1:搬砖问题:36块砖,36人搬,男搬4,女搬3,两个小孩抬1砖,要求一次搬完,问男、女和小孩各若干? #include “stdio.h” 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++;} }

程序2 打印形状为直角三角形的乘法口诀。 #include \ main()

{int i,j,result; for (i=1;i<10;i++) { for(j=1;j

result=i*j;

printf(\表示左对齐,占3位*/ }

printf(\每一行后换行*/ } }

程序3 求1000以内的所有素数。 #include “stdio.h” main( ) {

int m,i;

for(m=2;m<=100;m++) { for(i=2;i<=m-1;i++) if(m%i==0) break; if(i>m-1) printf(\ } }

程序4:计算和统计旅客运费程序 。 由键盘输入旅客行李重量(w),按公式 :

若( w<=50kg )f=1.5*w ,若(w>50kg)f=1.5*50 + 2.8*(w-50) ( w>50kg )

1

绥化学院程序设计实践实验报告范例 参考

计算运费,要求:

(1)打印每位旅客的顺序号,行李重量,应付运费 ; (2)假定每天最多办理100人的行李托运手续或当w≤0时循环结束, 下班时打印出全天的运费总收入和办理的总人数。 方法一(while结构) #include “stdio.h” main( ) {

int num=0;

float w,f,total=0; scanf(\

while (w>0&&num<100 ) { if (w<=50) f=1.5*w;

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

printf ( \ total+=f; scanf (\ }

printf (\ TotalIncome=.2f\\n\}

方法二(do-while结构) #include “stdio.h” main( ) {

int num=0;

float w,f,total=0; do

{ scanf(\ if (w<=0) break; if (w<=50) f=1.5*w; else f=1.5*50+2.8*(w-50); num++;

printf ( \ %8.2f\\n\ total+=f;

} while (num<100);

printf (\ TotalIncome=.2f\\n\ }

方法三(for结构) #include “stdio.h” main( ) {

int num;

float w,f,total=0; scanf(\

for (num=1;w>0&&num<=100;num++) {if (w<=50) f=1.5*w;

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

printf ( \ %8.2f\\n\ total+=f; scanf(\ }

printf (\ TotalIncome=.2f\\n\ }

2

绥化学院程序设计实践实验报告范例 参考

3

绥化学院程序设计实践实验报告范例 参考

实 验 二:数组

实验目的:1.更加灵活的使用一维数组和二维数组 2.把数组和指针结合使用 实验内容:

1.约瑟夫环问题

由n个人围成一个首尾相连的圈报数。从第一个人开始,从1开始报数,报到3的人出圈,剩下的人继续从1开始报数,直到所有的人都出圈为止。求出所有人的出圈顺序。 #include main()

{int a[10];

int n=8,i,k=0,j=1,len; len=n; i=0;

//给数组赋值 for(i=0;i

//i为元素下标,j代表当前要报的数 ,len表示圈中当前人数

while(len>0){ if(a[k%n]>0){ if(j%3==0){

printf(\找到要出圈的人,并把圈中人数减一 ,最后一个人才输出 a[k%n]=-1; j=1; k++; len--; }

else{//报数不是3 k++; j++; } }

else//遇到空位了,就跳到下一位,但j不加一,也就是这个位置没有报数 k++; } }

2.学生成绩统计与分析

输入10名学生的英语、C语言、计算机文化基础成绩,统计每名学生三科成绩的平均分,分析三门课程的优秀率,85分以上为优秀。 #include void main() {

int grade[10][4];

int i,j,average,egood,cgood,jgood;

4

绥化学院程序设计实践实验报告范例 参考

for(i=0;i<10;i++) {

printf(\请输入第%d个学生的英语、c语言、计算机\\n\ for(j=0;j<3;j++)

scanf(\ }

egood=cgood=jgood=0;

for(i=0;i<10;i++) //10个人 {

average=0;

for(j=0;j<3;j++) //三门课程 {

average+=grade[i][j]; if(grade[i][j]>=85) {

if(j==0) egood++; if(j==1) cgood++; if(j==2) jgood++; } }

grade[i][3]=average/3; }

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

printf(\第%d个学生的三科平均分为:%d\\n\ printf(\英语成绩优秀的学生为%d\\n\ printf(\语言成绩优秀的学生为%d\\n\ printf(\计算机成绩优秀的学生为%d\\n\}

3.利用指针实现数组合并 数组a:“1,7,9,11,13,15,17,19”; 数组b:“2,4,6,8,10”, 两个数组合并为数组c,按升序排列。 #include void main()

{ int paixu (int c[]);

int a[8]={1,7,9,11,13,15,17,19}; int b[5]={2,3,6,8,10}; int c[13]; int *p,*q,*s;

for(p=a,s=c;p<8+a;p++,s++) *s=*p;

for(q=b;q

paixu(int c[]) {int i,j,k;

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

5

C语言程序设计实践实验题目.doc

绥化学院程序设计实践实验报告范例参考实验题目:循环结构程序设计实验目的:1.熟悉VC++6.0的运行环境,掌握C程序的执行方法;2.掌握三种基本数据类型、部分运算符号和常用函数;3.掌握三种循环控制语句及break和continue
推荐度:
点击下载文档文档为doc格式
70mr974lgq86wqu5roq73pebe0io3700lkg
领取福利

微信扫码领取福利

微信扫码分享