第7周中级练习
本周作业一律用指针和函数完成。不同指针和函数,没有意义。
依照学术诚信条款,我保证此作业是本人独立完成的。
温馨提示:
1.本次作业属于Online Judge题目,提交后由系统即时判分。
2.学生可以在作业截止时间之前不限次数提交答案,系统将取其中的最高分作为最终成绩。
1指针实现向量的内积计算(10分)
题目内容:
两个向量a = [a1, a2,…, an]和b = [b1, b2,…, bn]的内积定义为:
a·b=a1b1+a2b2+……+an*bn
编写函数,使用指针实现两个向量的内积的计算。要求函数中不出现下标运算。
编写主函数,分别输入两个向量,均以-9999为结束标志,维数相同。调用函数计算内积,在主函数中输出。向量为实数向量,维数不超过100。
输入格式:
两行用空格隔开的实数,每行以-9999为结束标志。
输出格式:
一个实数。
输入样例:
1 2 3 -9999
4 5 6 -9999
输出样例:
32
时间限制:500ms内存限制:32000kb
C++
#include <iostream>
using namespace std;
void sumj(double * a,double *b,double *c){
*c=0;
while(*a!=-9999 && *b!=-9999){
*c+=*a**b;
a++;++b;
}
}
void inputa(double *a){
cin>>*a;
while(*a!=-9999){
a++;
cin>>*a;
}
}
int main() {
double *a=new double[120],*b=new double[120],*sum=new double;
double *a1=a,*a2=b;
inputa(a);inputa(b);
sumj(a1,a2,sum);
cout<<*sum;
return 0;
}
用例测试结果 运行时间 占用内存 提示 得分
用例1通过 2ms 248kb
3
用例2通过 2ms 248kb
3
用例3通过 2ms 248kb
2
用例4通过 2ms 256kb
2
提交答案本次得分/总分:10.00/10.00分
2使用指针的插入排序(10分)
题目内容:
编写函数,使用指针对一维整型数组进行插入排序。要求函数中不出现下