《上海工程技术大学C语言实验报告》由会员分享,可在线阅读,更多相关《上海工程技术大学C语言实验报告(7页珍藏版)》请在人人文库网上搜索。
1、实 验 报 告高级语言程序设计20122013学年第 二 学期学院(部)管理学院指导教师班级代号姓名/学号同组人综 合 实 验一实验目的通过实验把C语言中的顺序结构、选择结构、循环结构、数组、函数等主要知识点进行综合应用,加深学生对编程算法思想的理解,进一步提高学生的编程能力。二实验学时数2学时+课后4学时三实验步骤1、题目与问题重述(1)程序流程控制分别求100以内奇数、偶数之和。(2)数组的应用有一个34的矩阵,求其中的最小元素的值及其行下标和列下标。(3)函数的调用将起泡排序法编写成函数,实现10个任意整数按从小到大排序。(4)综合练习可编写多个自定义函数,求每个学生的平均成绩,所有学生。
2、成绩的最大值、最小值并保存在数组中;在主函数中有正确输入和函数调用,学生的学号及各科成绩可以根据不同的情况采用不同的输入方法,学生人数和课程数量自定。2、问题分析及算法步骤(或者流程图)3、程序清单4、运行结果分析(1)程序流程控制分别求100以内奇数、偶数之和。问题重述:本题要求分别求出0100中所有奇数、偶数之和,即在0100中,分别筛选出所有奇数相加、所有偶数相加,最后输出两个和。问题分析及算法步骤:1)、定义两个变量sum1,sum2分别表示偶数的和、奇数的和,并给予初始值0,0;2)、利用for循环结构,从i=0开始到一百结束;3)、判断i是否能被2整除,即对i取余,看余数是否为零,。
3、若为零,则i为偶数,此时sum1=sum1+i,否则i为奇数,sum2=sum2+i;4)、输出sum1,sum2即分别为0100内偶数、奇数之和。程序清单:#includevoid main()int sum1=0,sum2=0,i;for(i=0;ivoid main()int a34=9,6,4,11,10,12,7,8,3,14,20,20;int i,j,min,r=0,c=0;min=a00; for (i=0;ib1,则交换;4)、然后比较第二个数与第三个数;依次类推,直至第n-1个数和第n个数比较为止;5)、对前n-1个数进行第二趟冒泡排序,使次大的数被安置在第n-1个元素位置。
4、;6)、重复上述过程,共经过n-1趟冒泡排序后,排序结束;7)、在主函数中调用该函数,实现排序。程序清单:#includevoid main() void f(int b,int n);int a10,i;printf(put in 10 numbers:n);for (i=0;ibi+1) t=bi;bi=bi+1;bi+1=t;运行结果:(4)综合练习可编写多个自定义函数,求每个学生的平均成绩,所有学生成绩的最大值、最小值并保存在数组中;在主函数中有正确输入和函数调用,学生的学号及各科成绩可以根据不同的情况采用不同的输入方法,学生人数和课程数量自定。问题重述:本题要求编写多个自定义函数,这。
5、些函数在主函数中调用后可分别求出每位学生的平均成绩,所有学生成绩的最大值、最小值并保存在数组中。问题分析及算法步骤:1)、先定义一求平均数的函数aver,假设有五位学生,三门科目;2)、在aver函数中定义形参数组a53来接收实参的数据,并定义str5来保存平均分;3)、行号代表学生的学号,对应其平均分stii;4)、再定义一函数max求最大值,利用for循环把最大值赋给m,return m;5)、同理定义最小值函数min;6)、在主函数中分别调用个函数;7)、输出结果,程序结束。程序清单:#includevoid aver(int a53) float str5;int i,j;float sum=0; printf(学号 平均成绩n);for(i=0;iaij)n=aij; return(n); void main() int b53,i,j,m,n; printf(请依次输入五个同学的三门功课的成绩:n); for(i=0;i5;i+)for(j=0;j3;j+) scanf(%d,&bij); aver(b); m=max(b);n=min(b); printf(成绩的最大值为:%dn,m);printf(成绩的最小值为:%dn,n);运行结果:四、实验总结。