输出类的X和Y值(C++)
通过课程进入 | 题 号: | 136 | 输出类的X和Y值(C++) | 语言要求: | C++ |
在下面横线处填上适当字句,是函数实现指定功能。 class Location{ private : int X,Y; public: void init(int initX,int initY){ X = initX; Y = initY; } int GetX(){ return X; } int GetY(){ return Y; } }; int main(){ Location A1; A1.init(20,90); ___①_____ //定义一个指向A1的引用rA1; ___②_____ //用rA1在屏幕上依次输出对象A1的数据成员X和Y的值; return 0; } |
main函数:
int main() {
Location A1;
A1.init(20, 90);
Location& rA1 = A1; // 定义一个指向A1的引用rA1
cout<<rA1.GetX()<<rA1.GetY();//用rA1在屏幕上依次输出对象A1的数据成员X和Y的值;
return 0;
}
首先定义了类 Location
,包含两个 private 成员变量 X
和 Y
,以及三个 public 成员函数 init()
、GetX()
和 GetY()
。其中,init()
函数用于初始化对象的 X 和 Y 坐标,GetX()
和 GetY()
函数分别返回对象的 X 和 Y 坐标。
在 main()
函数中,首先创建了一个 Location
类型的对象 A1
,并调用 init()
函数对其进行初始化。然后,创建了一个 Location
类型的引用 rA1
,用于指向对象 A1
。最后,通过引用 rA1
,依次调用对象 A1
的 GetX()
和 GetY()
函数输出其数据成员 X
和 Y
的值。
完整答案:
#include <iostream>
using namespace std;
class Location{
private :
int X,Y;
public:
void init(int initX,int initY){
X = initX;
Y = initY;
}
int GetX(){
return X;
}
int GetY(){
return Y;
}
};
int main(){
Location A1;
A1.init(20,90);
Location &rA1=A1;
cout<<rA1.GetX()<<rA1.GetY();
return 0;
}
实现Clock类(C++)
通过课程进入 | 题 号: | 140 | 实现Clock类(C++) | 语言要求: | C++ |
实现时钟类Clock,(24小时制,0~23) 在代码中引入头文件 Clock.h 它的定义如下: #include <iostream> using namespace std; class Clock{ public: Clock(int h,int m, int s); void SetAlarm(int h,int m,int s); void run(); void ShowTime(){ cout<<"Now:"<<hour<<":"<<minute<<":"<<second<<endl; } private: int hour; //时 int minute; //分 int second; //秒 int Ahour; //时(闹钟) int Aminute; //分(闹钟) int Asecond; //秒(闹钟) }; 实现构造函数Clock(int h,int m, int s) 构造函数设置时、分、秒。设置前先判断传入的时分秒是否合法,如果不合法将其设置为0 例如 Clock c(25,61,-1); c.ShowTime(); 输出: Now:0:0:0 实现SetAlarm 成员函数,设置闹钟设置时同样要判断传入的时分秒是否合法,但闹钟的时分秒可以为负数,表示关闭闹钟 实现run成员函数,将现在的时间秒数加一 ,然后检查闹钟时间是否到 ,如果闹钟触发,则输出"Plink!plink!plink!..." 例如: Clock c(2,3,4); c.SetAlarm(2,3,5); c.run(); 输出: Plink!plink!plink!...回车 在你的代码中需实现上述三个方法,例如: #include "Clock.h" Clock::Clock(int h,int m, int s){ ... } void Clock::SetAlarm(int h,int m, int s){ ... } void Clock::run(){ ... } |
#include<iostream>
#include"Clock.h"
using namespace std;
Clock::Clock(int h,int m,int s)
{
if(h<0||h>23) hour=0;
else hour=h;
if(m<0||m>59) minute=0;
else minute=m;
if(s<0||s>59) second=0;
else second=s;
}
void Clock::SetAlarm(int h,int m,int s)
{
if(h>23) Ahour=0;
else Ahour=h;
if(m>59) Aminute=0;
else Aminute=m;
if(s>59) Asecond=0;
else Asecond=s;
return ;
}
void Clock::run()
{
second+=1;
if(second>59)
{second=0;
minute+=1;}
if(minute>59)
{minute=0;
hour+=1;}
if(hour>23)
{hour=0;}
if((hour==Ahour)&&(minute==Aminute)&&(second==Asecond))
cout<<"Plink!plink!plink!..."<<endl;
return ;
}
实现User类(C++)
通过课程进入 | 题 号: | 148 | 实现User类(C++) | 语言要求: | C++ |
设计一个User类,要求User类可以保持多个用户的用户名和密码信息, 实现User类的构造函数和AddUser方法添加新用户, 实现int login(char *name,char * pass)方法,该方法接受用户名和密码, 判断用户名对应的密码是否正确,如果正确返回用户的编号,如果不正确返回-1。 User类的使用示意如下所示,在你的代码中除了实现User类以外,还需一如如下main函数 int main(){ char name[10],name1[10],pass[10],pass1[10]; cin>>name>>pass>>name1>>pass1; User user("LiWei","liwei101"); user.AddUser(name,pass); if (user.login(name1,pass1) >=0) { cout<<"Success Login!"<<endl; } else{ cout<<"Login failed!"<<endl; } return 0; } 例如输入: test 1234567 test 123456回车 输出: Login failed! |
#include <iostream>
#include <string.h>
using namespace std;
class User{
private:
char name[1000][10];
char pass[1000][10];
int num;
public:
int login(char *name1,char * pass1){
for(int i=0;i<num;i++){
if(strcmp(name[i],name1)==0){
if(strcmp(pass[i],pass1)==0){
return i;
}else{
break;
}
}
}return -1;
}
User(char * name1,char * pass1){
num=0;
strcpy(name[num],name1);
strcpy(pass[num],pass1);
num++;
}
void AddUser(char * name1,char * pass1){
strcpy(name[num],name1);
strcpy(pass[num],pass1);
num++;
}
};
int main(){
char name[10],name1[10],pass[10],pass1[10];
cin>>name>>pass>>name1>>pass1;
User user("LiWei","liwei101");
user.AddUser(name,pass);
if (user.login(name1,pass1) >=0)
{
cout<<"Success Login!"<<endl;
}
else{
cout<<"Login failed!"<<endl;
}
return 0;
}