#include<iostream>
using namespace std;
void enter(int*m)
{
for(int i=0;i<10;i++)
cin>>m;
}
void key(int*m)
{
int max=m[0],min=m[0],n=0,k=0,z;
for(int i=1;i<10;i++)
{
if(max<m)
{
max=m;
n=i;
}
}
for(int i=1;i<10;i++)
{
if(min>m)
{
min=m;
k=i;
}
}
if(n==0&&k==9)
{
z=m[0];m[0]=m[9];m[9]=z;
}
else if(n==0&&k!=9)
{
z=m[9];m[9]=m[n];m[n]=z;
z=m[0];m[0]=m[k];m[k]=z;
}
else
{
z=m[0];m[0]=m[k];m[k]=z;
z=m[9];m[9]=m[n];m[n]=z;
}
}
void print(int*m)
{
for(int i=0;i<10;i++)
cout<<m<<'';
}
int main()
{
int ans[10];
enter(ans);
key(ans);
print(ans);
return 0;
}
include用法:
#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。
插入头文件的内容
#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:
1、#include<文件名>
2、#include"文件名"
输入10个整数,将其中最小的是与第一个数对换,把最大的数与最后一个数对换,要求用指针来完成,并写三个函数,1.输入10个整数 2.进行处理 3.输出10个数
#include
void main()
{
void readin(int *);//定义readin来录入10个整数//
int comp(int *);//定义comp来处理10个整数//
void print(int *);//定义print来输出10个整数//
int a[10];
readin(a);
comp(a);
print(a);
}
void readin(int *p)
{
int i=0;
printf("请输入10个整数\n");
for(;i<10;i++)
scanf("%d",p++);//注意请勿要将p++误写成*p++或&p++,因为p已经定义成指针类型,//
} //本身就已经是指向地址的了,故不必再加*或&,否则出错//
int comp(int *f)
{
int i,j=0,k=9,t,r; //用j来记录最小的数的下标,用k来记录最大的数的下标//
for(i=0;i<10;i++)
{if(*(f+j)<*(f+i)) continue; //找出数组中最小的数//
j=i; //这个最小的数的下标用j来记录//
}
for(i=8;i>=0;i--)
{if(*(f+k)>*(f+i)) continue; //找出数组中最大的数//
k=i; //这个最大的数的下标用k来记录//
}
t=*(f+j);*(f+j)=*f;*f=t; //将最小的数与第一个数对换//
r=*(f+k);*(f+k)=*(f+9);*(f+9)=r; //将最大的数与最后一个数对换//
}
void print(int *u)
{
int i;
printf("处理后的结果是:\n");
for(i=0;i<10;i++)
printf("%d ",*u++);
printf("\n");
}
请注意看结果,如上图的输出结果,除了1和2,9和10的位置对换之外,
其他数的位置是保持不变的
#include
void input(int *number)
{
int i;
printf("请以,号间隔输入10个数:");
for (i=0;i<9;i++)
scanf("%d,",&number[i]);
scanf("%d",&number[9]);
}
void max_min_value(int *array)
{int *max,*min;
int *p, *array_end;
array_end=array+10;
max=min=array;
for(p=array+1;p
else if (*p<*min) min=p;
*p=array[0];array[0]=*min;*min=*p;
*p=array[9];array[9]=*max;*max=*p;
return;
}
void output(int *array)
{
int *p;
printf("交换后10个数为:");
for(p=array;p
printf("%d\n",array[9]);
}
void main()
{
int number[10];
input(number);
max_min_value(number);
output(number);
}