第二次作业
现在老师已经快讲完了整一本书,我差不多就只学了一半吧。前面的基本内容,数据类型,运算符、表达式啊,和简单的输入输出是比较懂,到了后面的选择结构还可以,就是循环结构总是弄得不懂。就是老是会在输入n个数那里卡住。函数的传值调用和引用调用有时候会分不清。还有就是有时候复杂的函数会很难弄乱。数组还没有完全参透。指针的话有时候分不清*和&。因为前面的数组没学好,所以后面的指针与数组也不会。
#include <iostream>
using namespace std;
void change(int *a,int n)
{
int min=0,i;
for(i=1;i<n;i++)
{
if(*(a+i)<*(a+min))
{
min=i;
}
}
int t;
t=*a;
*a=*(a+min);
*(a+min)=t;
int max=0,k;
for(i=1;i<n;i++)
{
if(*(a+i)>*(a+max))
{
max=i;
}
}
int l;
l=*(a+n-1);
*(a+n-1)=*(a+max);
*(a+max)=l;
}
int main()
{
int n;
cin >> n;
int a[n];
int i;
for(i=0;i<n;i++)
{
cin >> a[i];
}
change(a,n);
for(i=0;i<n;i++)
{
cout << a[i];
if(i<n-1)
{
cout << " ";
}
}
}
这个运用了指针的传值调用,指针的运算,主要学习来自于课本自学,不会的向身边同学请教。

浙公网安备 33010602011771号