[C++]第七章 (1)指针与一维数组(作业)
**
第一周作业 (作业题整理-B-1-第七章-指针)
(
- *初学C++,想要把每周老师布置的实验题和自己写的程序记录下来,方便期末整理复习,请多多指教!
- 老师要求用的版本比较老,是Microsoft Visual C++ 2010 Express。*
)
1、请设计一个程序,定义5个不同类型的变量,测试各变量的地址。
#include<iostream>
using namespace std;
void main()
{
int a1;
float a2;
double a3;
bool a4;
int a[10];
cout<<&a1<<'\t'<<&a2<<'\t'<<&a3<<endl;
cout<<&a4<<'\t'<<&a[10]<<endl;
getchar();
getchar();
}
2、使用指针输入10个实数存入一维数组中,计算并输出它们的和与平均值。要求输入、计算和输出均使用指针。
#include<iostream>
using namespace std;
void main()
{
double a[10],*p,sum=0,m,*p1=&sum,*p2=&m;
int i;
for(p=a;p<=a+9;p++)
cin>>*p,*p1+=*p;
*p2=*p1/10.0;
cout<<"这十个数的和为:"<<*p1<<'\n'<<"这十个数的平均数为"<<*p2;
getchar();
getchar();
}
3、设有a[5]={1,3,5,7,9},b[5]={1,2,3,4,5},求a和b的交集放到数组c中。所谓交集是求两个数组中相同的数据,如a和b的交集c[5]={1,3,5}。请设计一个程序利用指针完成。
/*3、设有a[5]={1,3,5,7,9},b[5]={1,2,3,4,5},求a和b的交集放到数组c中。
所谓交集是求两个数组中相同的数据,如a和b的交集c[5]={1,3,5}。请设计
一个程序利用指针完成.*/
#include<iostream>
using namespace std;
void main()
{
int a[5]={1,3,5,7,9},b[5]={1,2,3,4,5},c[5]={0};
int*p1,*p2=b,*p3=c;
for(p1=a;p1<=a+4;p1++)
{
for(p2=&b[0];p2<=b+4;p2++)
{
if(*p1==*p2)
*p3=*p1,p3++;
}
}
for(p3=&c[0];*p3!=0;p3++)
cout<<*p3<<'\t';
getchar();
getchar();
}
记录做题过程
- 编译总是不成功的原因:if 语句的条件中,将比较相等符号“==”写成赋值符号“=”。