.
.
高级语言程序设计课程设计
题目:多重模块管理
专 业 计算机 班 级 1306班 学 生 林道松 学 号 3131903609 指导教师 鲍春波 /肖琳 起止时间 2014-2-17—2014-2-21
2014年 2月
.
目录
A组题目 ..................................................................... 1 系统分析.................................................................... 30 系统设计.................................................................... 31 系统实现.................................................................... 32 运行测试.................................................................... 33 心得体会.................................................................... 36 参考文献.................................................................... 36
.
.
A组题目
题目1:
写一个函数计算下列函数的值f(0),f(3),f(-3),测试之。函数如下:
解:
#include
printf(\ scanf(\ result=f(num);
printf(\}
int f(int n) { int s;
if(n>0) s=3*n*n-4; if(n==0) s=2; if(n<0) s=0; return s; }
评析:这是一个简单的选择判断结构,只需将条件编写清楚即可。
题目2:
写一个函数void maxMinAver(int *data, int *max, int *min,float * ave,int size), 求一组数据的最大值、最小值和平均值,测试之。其中data指向给定数据的数组的指针,max、min、ave分别指向最大值、最小值和平均值,size是数组的大小。
要求第一个实参是数组,第2、3、4个实参都是对普通的简单变量的某种操作,最后一个实参是数组的大小。测试之
解:
#include
void maxMinAver(int *data,int *max, int *min,float * ave,int size); int main() {
int n,i;
.
.
int max,min; float ave; int *data;
printf(\ scanf(\
data=(int*)malloc(n*sizeof(int)); for(i=0;i maxMinAver(data,&max,&min,&ave,n); printf(\ return 0; } void maxMinAver(int *data,int *max, int *min,float * ave,int size) { int i,sum=0; *max=data[0]; *min=data[0]; for(i=0;i if(*max<=data[i]) *max=data[i]; if(*min>=data[i]) *min=data[i]; sum+=data[i]; } *ave=(float)sum/size; } 评析:这是一个以指针为参数的函数,用冒泡法对数组中的每一个数进行比较,这道题目的需要注意的地方就是在函数的调用需注意函数实参,以及对数组内存空间的申请。 题目3: 写一个函数用指针型字符串实现两个字符串比较,int mystrcmp(const char *str1, const char *str2),如果大于返回1,等于返回0,小于返回-1,测试之 解: #include int mystrcmp(const char *str1, const char *str2); int main() { char str1[100],str2[100]; scanf(\ printf(\ return 0; } .
相关推荐: