int main(int argc, char* argv[]) {
char a[100];   char *p,*p1=a;
printf(\"%d,%d,%d,%d\  return 0; }
2 分析下列程序输出结果--静态、析构、传值调用(6分) #include \"stdafx.h\" class CObj {
public:  CObj(){
m_nCounter++;  };
~CObj()  {
m_nCounter--;  };
static void Print()  {
printf(\"Counter=%d\\n\ }; private:
static int m_nCounter; };
int CObj::m_nCounter=0; void  Test(CObj a,CObj b) {
CObj::Print(); };
int _tmain(int argc, _TCHAR* argv[])
                                         3 / 5
{
CObj a,b,c;  CObj::Print();  {
CObj c,d,e;       CObj::Print();  }
CObj::Print();  Test(a,b);   CObj::Print();  return 0; }
3 写出以下代码执行结果--虚函数和成员函数调用(12分)#include \"stdafx.h\" class CBase {
public:  CBase()  {
m=0;   n=0;  }
virtual void Test()  {
m=0;   n=0;
printf(\"Test:m=%d,n=%d\\n\ };
void Test1()  {
printf(\"Test1:m=%d,n=%d\\n\ }
protected:  int m;  int n; };
class CDerive:public CBase {
public:
CDerive()  {
                               4 / 5
m++;   n++;  };
virtual void Test()  {
printf(\"Test:m=%d,n=%d\\n\ }
void Test1()  {
printf(\"Test1:m=%d,n=%d\\n\ } };
int _tmain(int argc, _TCHAR* argv[]) {
CBase base;  CDerive Derive;
CBase *pBaseArray[2]={&base,&Derive};  pBaseArray[0]->Test();  pBaseArray[1]->Test();  pBaseArray[0]->Test1();  pBaseArray[1]->Test1();  return 0; }
四 编程题目(32分)
1  不调用库函数,写一个函数,输入一个整数,返回这个整数对应的字符串;比如输入245,返回“245”。(10分)    函数原型:
int  GetCount(int nValue,char *buffer,int nBufferLen); // buffer:保存字符串缓冲,假定预先分配长度为32;
2 有人想将手中一张面值100元的人民币换成5元、1元、0.5元面值的零钱共100张,以上三种面值的零钱至少有一张,问共有几种换法。请编写一个函数实现输出每一种换法的钞票数量。(10分)
函数原型:  void  OutputMethod();
3一辆卡车违反交通规则,撞人逃跑。现场3人目击,但没记住车号,只记下车的特征。甲说:牌照前两位数相同,乙说:牌照后两位数相同。丙是位数学家,他说:四位的车号刚好是一个整数的平方。请编写一个函数,输出车牌号。(12分)   函数原型: int  OutputCarNo()
                                         5 / 5