定义一个一维数组,写以下6个函数来完成相应功能,在主函数中调用这6个函数。(要求,函数形参都为指针变量)
2012-12-20 08:19
429 查看
// 121219 上机任务2.cpp : 定义控制台应用程序的入口点。 // /* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者: 刘同宾 * 完成日期:2012 年 12 月 18 日 * 版 本 号:v1.0 * 输入描述: * 问题描述:(2)定义一个一维数组,写以下6个函数来完成相应功能,在主函数中调用这6个函数。(要求,函数形参都为指针变量) 函数1,完成对该数组元素的键盘值输入 函数2,完成对该数组元素的遍历输出 函数3,求该数组元素的最大值。 函数4,用选择法对该数组进行从大到小排序 函数5,用冒泡法对该数组进行从小到大排序 函数6,对该数组元素进行逆向存储。 * 程序输出: * 问题分析:略 * 算法设计:略 */ #include "stdafx.h" #include<iostream> using namespace std; int main() { void input(int *,int);//函数声明 void output(int *,int); void max(int *,int); void select(int *,int); void bubble(int *,int); void save(int *,int); const int n=10; int a ; int *p; p=a;//或者是p=&a[0]; input(p,n);//函数调用 output(p,n); max(p,n); select(p,n); bubble(p,n); save(p,n); cout<<endl; return 0; } //输入数组元素函数 void input(int *p,int n) { cout<<"请输入10个数组元素:"<<endl; int i; for(i=0;i<n;i++) { cin>>*(p+i); } } //输出数组元素函数 void output(int *p,int n) { int i; for(i=0;i<n;i++) { cout<<*(p+i)<<" "; } cout<<endl; } //求数组最大值 void max(int *p,int n) { int i,max; max=*p; for(i=0;i<n;i++) { if(max<*(p+i)) { max=*(p+i); } } cout<<"最大值:"<<endl <<"max="<<max<<endl; } //选择法对数组元素进行从大到小排序 函数 void select(int *p,int n) { void output(int *p,int n);//函数声明 int i,j,k,temp; for(i=0;i<n-1;i++) { k=i; for(j=i+1;j<n;j++) { if(*(p+k)<*(p+j)) { k=j; } temp=*(p+k); *(p+k)=*(p+i); *(p+i)=temp; } } cout<<"选择从大到小:"<<endl; output(p,n); } //冒泡法对数组元素从小到大排序 void bubble(int *p,int n) { void output(int *,int); int i,j,temp; for(j=1;j<n;j++) { for(i=0;i<n-j;i++) { if(*(p+i)>*(p+i+1)) { temp=*(p+i); *(p+i)=*(p+i+1); *(p+i+1)=temp; } } } cout<<"冒泡从小到大:"<<endl; output(p,n); } //对其进行逆序存储 函数 void save(int *p,int n) { void output(int *,int); int i,temp; for(i=0;i<n/2;i++) { temp=*(p+i); *(p+i)=*(p+n-1-i); *(p+n-1-i)=temp; } cout<<"逆序存储:"<<endl; output(p,n); }
相关文章推荐
- 定义一个一维数组,写5个函数来完成相应功能,在主函数中调用这5个函数。(要求,函数形参都为指针变量)
- 编写函数,其功能是:将一个数字字符串转换为一个整数(不得调用C语言中提供的将字符串转换成整数的函数。)要求在主函数中输入该字符串并输出转换后的整数的值。
- 需要求3个长方体的体积,写一个基于对象的程序,数据成员包括 length width height 要求用成员函数实现以下功能
- //1、有一个字符串开头或结尾含有n个空格(” abcdefgdddd ”),欲去掉前后空格,返回一个新字符串。 //要求1:请自己定义一个接口(函数),并实现功能;70分 //要求2:编写
- 编写一个与dup2功能相同的函数,要求不调用fcntl函数,并且要有正确的出错处理
- 例7.14 有一个一维数组,内放10个学生成绩,写一个函数,当主函数调用此函数后,能求出平均分、最高分和最低分。
- 完成函数reverse,要求实现把给定的一个整数取其相反数的功能
- 已定义的函数有返回值,函数调用可以作为一个函数的实参,但是不能作为形参
- 已定义的函数有返回值,函数调用可以作为一个函数的实参,但是不能作为形参
- 有一个一维数组,内放10个学生成绩,写一个函数当主函数调用此函数后嫩求出平均分、最高分和最低分
- 定义一个二维数组,写函数来实现对该二维数组求最大值。(要求,用行指针为函数形参)
- 写一个好函数,功能:求C风格字符串长度;要求:不调用其他函数,不使用变量
- 使用sqlite3(数据库知识)的接口函数完成一个用户注册功能模块设计 要封装成函数,在独立的main中调用测试
- 编写一个程序,其main()调用一个用户定义的函数(以光年值为参数,并返回对应天文单位 的值).该程序按下面的格式要求用户输入光年值
- 编写一个与3.12节中dup2功能相同的函数,要求不调用fcntl函数,并且要有正确的出错处理(APUE)
- 使用sqlite3的接口函数完成一个用户登录验证功能模块设计 要封装成独立函数,在独立的main中调用测试;
- 写出一个函数,要求将输入的十六进制数转换成十进制数。要求函数调用时,使用指针作函数形参。
- C++第三周任务3请在原类基础上,增加成员函数,要求前三个设计成内置函数,在main()数中增加适当的调用以展示扩充类定义后的功能(最好能一次运行)。
- 2、按以下要求编写程序 (1) 编写Animal接口,接口中声明run() 方法 (2) 定义Bird类和Fish类实现Animal接口 (3) 编写Bird类和Fish类的测试程序,并调用其
- 函数声明放在头文件中,函数的定义放在实现文件中,然后在主函数中调用