1.输出最大值,最小值,平均值(用指针)
#include<iostream.h>
void zuida(int *a,int *b)
{
int p;
if(*a<*b)
{
p=*a;
*a=*b;
*b=p;
}
}
void zuixiao(int *a,int *b)
{
int p;
if(*a>*b)
{
p=*a;
*a=*b;
*b=p;
}
}
int main()
{
int i,n;
int a[10];
cin>>a[0];
for(i=1; i<10; i++)
{
cin>>a[i];
zuida(&a[0],&a[i]);
if(i>=2)
zuixiao(&a[1],&a[i]);
}
cout<<"最大值是:"<<a[0]<<endl;
cout<<"最小值是:"<<a[1]<<endl;
cout<<"平均值是:"<<(a[0]+a[1])/2<<endl;
return 0;
}
2.二维数组输入输出
#include<iostream.h>
int main()
{
int a[3][3]; //声明二维数组
int i,j;
cout<<"Please input 9 number:"<<endl;
for(i=0; i<3; i++)
for(j=0; j<3; j++)
cin>>a[i][j]; //接收数组元素
cout<<"Output:"<<endl;
for(i=0; i<=2; i++)
{
for(j=0; j<3; j++)
cout<<a[i][j]<<" "; //输出
cout<<endl; //换行
}
cout<<endl;
return 0;
}
3.一个小细节
输出结果:110..40..60
这是因为C里面参数处理是从右到左,而输出是从左到右。
#include<stdio.h>
int main(void)
{
int a = 10, b = 20, c = 30;
printf("\n %d..%d..%d \n", a+b+c, (b = b*2), (c = c*2));
return 0;
}