上机模拟试卷(2) 一:改错题: 函数void fun(char str[ ][ ], int m,*pt)的功能是:将数组str中的m(1<=m<=10)个字符串依次连接起来,组成一个新的字符串,放入pt所指的字符数组中,例如: 把3个串:abc、CD、EF串连接起来,所得新字符串是abcCDEF 含有错误的源程序如下: # include <iostream.h> # include <iostream.h> void fun(char str[ ][ ], int m, *pt) { int k,q,i; for(k=0;k<m;k++) { for(i=0;i<q;i++) pt[i]=str[k,i]; pt+=q; pt[i]=’\0’; } } main( ) { int m,h; char s[10][10],p[20]; cout<<”please enter m:”; cin>>m; cout<<”Please enter string:”; for(h=0;h<m;h++) cin>>s[h]; fun(s,p,m); cout<<”The result is:”<<p } 二:编程题: 建立一个类NUM,求所有大于1小于整数m的非素数,具体要求如下: 1. 私有数据成员 int m:存放输入的查找范围的上界 int k:存放指定范围内非素数的个数 int xx[50]:存放指定范围内的所有非素数 2公有成员函数 NUM(int a):构造函数,用参数a初始化m void fun():所有大于1小于 整数m的非素数放入数组x 中; 3.在主函数中对该类进行测试,定义一个NUM类的对象test,并指定查找范围的上界,通过test调用成员函数,查找指定范围内的所有非素数并输出2541 |