当前位置:首页 > c++程序填空
3.下列程序计算1000以内能被3整除的自然数之和,请完成程序。 #include
int x=1, sum; [1]
while(1) {
if( [2] )break; if( [3] )sum+=x; x++; }
cout< 1. [1] #include 3.[1] sum=0; [2]x>1000 [3]x%3==0 四、程序填空题 1. 下面的函数fun未使用中间变量实现对两个数的交换,请完成下列函数的定义。 void fun(int &x, int &y) { x+=y; y= [1] ; [2] ; } 2.下面的函数bubble()是对整数数组a按升序排序的冒泡算法,其中,参数a存储将被排序的数据, size是数组a中存储的元素数目,请完成该函数。 void bubble(int a[], int size) { [1] ; for(int p=1; [2] ; p++) for(int i=0; [3] ; i++) if(a[i]>a[i+1]) { temp=a[i]; [4] ; [5] ; } } 3. 下面的函数Sort()用于对整数数组array按升序排序的选择排序算法,其中参数n表示array数 组中存储的数组元素数。例如,假设数组array中有10个元素,选择排序就是:先将10个数 中的最小数与a[0]对换;再将a[1]到a[9]中的最小数与a[1]对换,….,直到排序完成。请完成 该函数。 void Sort( int array[], int n) { int k; [1] ; for(int i=0; i for(int j= [3] ; j 4. 以下程序的功能是求三角函数sinx的近似值,其计算精度为0.000001。已知求sinx近似值的计 算公式为: )!12( )1( !7!5!31sin)12( 1753 . ....... . . nxxxxxxnn. 其中,x的值为弧度。 当输入的x 值为度数时,将度数转化为弧度的公式为: 1801415926.3xy. #include double sin(double x,double eps) { double term,sum,y; int n=1; y=x*x; term= [1] ; sum=0; while(fabs(term)>=eps) { sum += [2] ; n++; term = term*y/ [3] ; term *= -1; } return [4] ; } void main(void) { double x,y; cout<<\请输入x的值(角度):\ cin>>x; while(x>360)x -= 360; y= [5] ; cout<<\角度为\的sin值是\} 1. [1]x-y [2]x=x-y或x-=y 2. [1]int temp [2]p [4]array[k]=array[i] [5]array[i]=t 4. [1]x [2]term [3]((2*n-1)*(2*n-2)) [4]sum [5]3.1415926*x/180 四、程序填空题 1. 统计字符串中英文字母个数的程序。 #include char s1[80]; cout<<\ [1] ; cout<<\} int count (char str[]) { int num=0; for (int i=0;str[i];i++) if (str[i]>='a' && str[i]<='z' || str[i]>='A' && str[i]<='Z') [2] ; return [3] ; } 2.如果矩阵A乘以B得到C,则必须满足如下的规则: ⑴矩阵A的列数等于矩阵B的行数; ⑵矩阵A的行数等于矩阵C的行数; ⑶矩阵B的列数等于矩阵C的列数; 矩阵相乘的乘法公式为: .. .. nkkjikijbac1 下面的函数MultiMatrix()用于求解整数矩阵的乘积,其中参数a、b和c分别表示存储乘数、 被乘数以及乘积结果的二维数组,arow和acol、brow和bcol以及crow和ccol分别表示矩 阵a的行数和列数、矩阵b的行数和列数以及矩阵c的行数和列数,且该函数被调用时的实 参满足:acol<=4、bcol<=5及ccol<=5。MultiMatrix()函数当提供的矩阵不满足矩阵相乘的条 件时该函数返回1,否则返回0,请完成该函数。 int MultiMatrix(int a[][4], int arow, int acol, int b[][5], int brow, int bcol, int c[][5], int crow, int ccol) { if(acol!=brow)return 1; if( [1] )return 1; if( [2] )return 1; for(int i=0; i for(int n=0; [5] ; n++) c[i][j]+=a[i][n]*b[n][j]; } return 0; } 3. 下面的函数fun未使用中间变量实现对两个数的交换,请完成下列函数的定义。 插入排序是通过把数组中的元素插入到适当位置来进行排序的。插入排序的步骤为: (1)将数组中的头两个元素按排序顺序排列 (2)把下一个元素(第3个元素)插入到其对应于已排序元素的排序位置 (3)对于数组中的每个元素重复(2),即把第4个元素插入到适当文职,然后是第5个,等等, 直到所有元素都插入排序完成 下面的程序利用了插入排序函数isort()进行排序,并在主函数中将排序前和排序后的数组元素 打印,请将程序补充完整。 #include void isort(int a[],int size) /*a为被排序数组,size为a中包含的元素个数*/ {
共分享92篇相关文档