c++语言程序代码

正确例题
#include “iostream”
using namespace std;
int main()
{
int a,i;
int cnt=0;
int c[16];
cout<<“输入一个十进制的正整数:”<<endl;
cin>>a;
if(a<0)
cout<<“输入错误,请输入正整数!”;
if(a==0) cout<<"转为二进制后为:0 ";
i=0;
while(a>=1)
{
c[i]=a%2;
i++;
a=a/2;
}
for (int j=0;j<i;j++)
{
if (c[j]==0||c[j]==1)
{
cout<<c[i-j-1];
}
}
cout<<endl;
return 0;
}

正确例题
#include
using namespace std;
#define LEN 20
void Convert(int n,int a[])
{
int i=LEN-1;
if(n<0) return;
else if(n0) a[i–]=0;
else{
while(n!=0){
a[i–]=n%2;
n/=2;
}
}
for(int j=0;j<=i;j++)
{
a[j]=-1;
}
}
int main()
{
int n,j=0;
cout<<“请输入一个十进制数(0~2147483647): “;
cin>>n;
int a[LEN];
char c;
while(1){
Convert(n,a);
cout<<n<<”=”;
for(int i=0;i<LEN;i++)
{
if(a[i]!=-1) {j++;cout<<a[i];}
if(j%3
0&&j!=0) cout<<“”;
}
cout<<endl;

cout<<"请输入一个十进制数(0~2147483647): ";
cin>>n;
}
cout<<endl;
}

正确例题
#include
using namespace std;
//10进制转-2进制
void dec2mbin(int a)
{
if(a)
{
int ys = a % (-2);
a = a / (-2);
if(ys < 0)
{
ys = ys + 2;
a = a + 1;
}
dec2mbin(a);
cout << ys;
}
}
//10进制转2进制
void dec2bin(int a)
{
if(a)
{
int ys = a % 2;
a = a / 2;
dec2bin(a);
cout << ys;
}
}
int main()
{
int a;
cout << “输入一个10进制数:” << endl;
cin >> a;
cout << “转化为-2进制数:”<<endl;
dec2mbin(a);
cout << endl;
cout << “转化为2进制数:”<<endl;
dec2bin(a);
cout << endl;
return 0;
}

正确例题
#include
using namespace std;
int main(int argc, char** argv)
{
int a,b,c=1,d=0;
cin>>a;
while(a!=0){
b=a%2;
a=a/2;
d=d+bc;
c=c
10;
}
cout<<d;
return 0;
}

正确例题
#include <stdio.h>
int Conversion(int dec)
{
int i;
if(dec==0)
{
return 0;
}
else
{
i=dec%2;
Conversion(dec/2);
printf(“%d”,i);
}
return 0;
}
int main( void )
{
int dec;
printf( “请输入需要转化成二进制的数 >” );
scanf( “%d”, &dec );
Conversion(dec);
printf(“\n”);
return 0;
}

正确例题
#include
using namespace std;
int main()
{
int n,i,j=0;
int a[1000];//存储二进制编码
cin>>n;
i=n;
while(i)//对2取余并除2,直到商为0时为止
{
a[j]=i%2;
i/=2;
j++;

}
for(i=j-1;i>=0;i–)//逆序输出
cout<<a[i];
cout<<endl;
}

正确例题
#include
#include <malloc.h>
#define MAX 33
using namespace std;
/* 十进制数转换为二进制数(字符串表示) */
char decToBin(long num);
int main()
{
long dec = 7;
cout<<“10进制数:\t”<<dec<<endl;
cout<<“2进制数:\t”<<decToBin(dec)<<endl;
return 0;
}
/
十进制数转换为二进制数(字符串表示) */
char *decToBin(long num)
{
char *arr;
char temp;
int i, n;
arr = (char *)malloc(sizeof(char) * MAX);
n = 0;
while(num > 0)
{
arr[n++] = num % 2 + ‘0’;
num /= 2;
}
for(i=0; i<n/2; i++)
{
temp = arr[i];
arr[i] = arr[n-1-i];
arr[n-1-i] = temp;
}
arr[n] = ‘\0’;
return arr;
}

正确例题
#include
using namespace std;
int main()
{
int sec(int n);
int i;
cout<<“请输入一个10进制数:”;
cin>>i;
sec(i);
cout<<endl;
}int sec(int n)
{
int i;
if (n!=0)
{
i = n%2;
sec(n/2);
cout<<i;
}
return i;
}

正确例题
#include
using namespace std;
int main()
{
int transfer(int x);
int x;
printf(“请输入一个十进制数:”);
scanf(“%d”,&x);
printf(“转换成二进制数是:%d\n”,transfer(x));
}
int transfer(int x)
{
int p=1,y=0,r;
while(1)
{
r=x%2;
x/=2;
y+=rp;
p
=10;
if(x<2)
{
y+=x*p;
break;
}
}
return y;
}

正确例题
#include
using namespace std;
int main()
{
int t(int x);
int x;
printf(“请输入一个十进制数:”);
scanf(“%d”,&x);
printf(“转换成二进制数是:%d\n”,t(x));
}
int t(int x)
{
int p=1,y=0,r;
while(1)
{
r=x%2;
x/=2;
y+=rp;
p
=10;
if(x<2)
{
y+=x*p;
break;
}
}
return y;
}

正确例题
#include
using namespace std;
char str[17]={“0123456789ABCDEF”};
int main()
{
int s,t;
int i=0,j;
char ans[10000];
cin>>s>>t;
while(s>0)
{
ans[i]=str[s%t];
s=s/t;
i++;
}
for(j=i-1;j>=0;j–)
cout<<ans[j];
return 0;
}

正确例题
#include
using namespace std;
char str[17]={“0123456789ABCDEF”};
int main()
{
int s,t;
int i=0,j;
char ans[10000];
cin>>t>>s;
while(s>0)
{
ans[i]=str[s%t];
s=s/t;
i++;
}
for(j=i-1;j>=0;j–)
cout<<ans[j];
return 0;
}

正确例题
#include<stdio.h>
int main()
{
int n,r,a[1000],t,f;
while(scanf(“%d%d”,&n,&r)2)
{
t=-1;f=0;
if(n
0)printf(“0\n”);
else
{
if(n<0)f=1,n=-1*n;
while(n!=0){a[++t]=n%r;n/=r;}
if(f==1)printf(“-”);
while(t>=0)
{ if(a[t]>=10)printf(“%c”,a[t]-10+‘A’);
else printf(“%d”,a[t]);t–;
}
printf(“\n”);
}
}
}

正确例题
#include
using namespace std;
const int StackSize=1024;
class Seqstack
{public:
Seqstack(){top=-1;}//构造函数,初始化空栈
void Push(int x);//入栈
int Pop();//出栈
bool Empty();//判别栈是否为空
void Trans(int Num,int N);//函数功能:将十进制的数Num转换为N进制

private:
int data[StackSize];//定义数组
int top;//栈顶指针
};
void Seqstack::Push(int x)
{if(top>=StackSize-1)throw"上溢";
top++;
data[top]=x;}
int Seqstack::Pop()
{if(Empty())throw"下溢";
top–;
return data[top+1];}
bool Seqstack::Empty()
{if(top==-1)return 1;
else return 0;}
void Seqstack::Trans(int Num, int N)
{int k;
while(Num)
{k=Num%N;
Push(k);
Num=Num/N;}
while(!Empty())
{k=Pop();
if(k<10)cout<<k;
else cout<<char(k+55);}
}
int main()
{int Num,N;
Seqstack s;
cout<<“将十进制数Num转换成N进制输出,请输入Num,N”<<endl;
cin>>Num>>N;
// while(Num)
{ s.Trans(Num,N);}
}

正确例题
#include<stdio.h>
#define N 2
void trans(int d)
{
if(d/N)
trans(d/N);
printf(“%d”,d%N);
}
int main()
{
int j,i;
for(j=0;j<=11;j++)
for(i=0;i<=11;i++)
{
trans(j);
printf(“+”);
trans(i);
printf(“=”);
trans(j+i);
if(i<j)
printf(“\t”);
else
printf(“\n”);
}
return 0;
}

正确例题
#include<stdio.h>
#define N 2
void trans(int d)
{
if(d/N)
trans(d/N);
printf(“%d”,d%N);
}
int main()
{
int j,i;
for(j=0;j<10;j++)
for(i=0;i<10;i++)
{
trans(j);
printf(“+”);
trans(i);
printf(“=”);
trans(j+i);
if(i<j)
printf(“\t”);
else
printf(“\n”);
}
return 0;
}

#include<stdio.h>
#define N 2
void trans(int d)
{
if(d/N)
trans(d/N);
printf(“%d”,d%N);
}
int main()
{
int j,i;
for(j=0;j<10;j++)
for(i=0;i<10;i++)
{
trans(j);
printf(“-”);
trans(i);
printf(“=”);
trans(j-i);
if(i<j)
printf(“\t”);
else
printf(“\n”);
}
return 0;
}

#include<stdio.h>
#define N 2
void trans(int d)
{
if(d/N)
trans(d/N);
printf(“%d”,d%N);
}
int main()
{
int j,i;
for(j=0;j<10;j++)
for(i=0;i<10;i++)
{
trans(j);
printf(“×”);
trans(i);
printf(“=”);
trans(j*i);
if(i<j)
printf(“\t”);
else
printf(“\n”);
}
return 0;
}

#include<stdio.h>
#define N 2
void trans(int d)
{
if(d/N)
trans(d/N);
printf(“%d”,d%N);
}
int main()
{
int j,i;
for(j=0;j<10;j++)
for(i=0;i<10;i++)
{
trans(j);
printf(“÷”);
trans(i);
printf(“=”);
trans(j/i);
if(i<j)
printf(“\t”);
else
printf(“\n”);
}
return 0;
}

正确例题
#include “stdio.h”
void outint(int k){
if(k>1) outint(k/2);
printf(“%d”,k%2);
}
void outdec(float k){
int i;
for(i=0;i<7;i++){
printf(“%d”,(int)(k+=k));
k-=(int)k;
}
}
int main(int argc,char *argv[]){
float x=123.456789f;
printf(“%f(10)–>”,x);
outint((int)x);
putchar(‘.’);
outdec(x-(int)x);
printf(“(2)\n”);
return 0;
}

正确例题
#include <stdio.h>
int main()
{
char* p= “红橙黄绿青蓝紫”;
while(*p!=0)
{
printf(“%s%s”,p,(p+1));
printf(" ");
p+=2;
}
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
int iChineseSize = strlen(“你”);
const char* p= “红橙黄绿青蓝紫”;
while (*p != ‘\0’)
{
printf("%.*s ", iChineseSize, p);
p += iChineseSize;
}
return 0;
}

正确例题
#include <stdio.h>
#include <stdlib.h>
int main()
{
char c[3]={‘6’,‘8’};//假定这是密码 3 = 2 + 1
char d[11]={‘0’,‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’};
for (int i=0; i<10; i++)
for (int j=0; j<10; j++) {
char e[3] = { d[i], d[j] };
if (strcmp(e,c)==0)
printf(“密码运算成功!密码为%s\n”, e);
}
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
//假定这是密码
char *c[2]={“6”,“8”};
char *d[10]={“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”};
char *s[2];
int i,j,n=0;
for (i=0; i<2; i++)
{
for (j=0; j<10; j++)
if (strcmp(d[j],c[i])0)
{
s[n++]=d[j];
break;
}
}
if(n
2)
{
printf(“密码运算成功!\n”);
printf(“密码为%s%s\n”, s[0],s[1]);
}
return 0;
}

正确例题
#include <stdio.h>
int main()
{
unsigned long i,m=1;
for (i=1;i<19;i++)
{
m*=i;
printf (“%lu×%lu=%lu\n”,m,i+1,m*(i+1));
}
}

正确例题
#include <stdio.h>
int main()
{
unsigned long i,m=0;
for (i=0;i<19;i++)
{
m+=i;
printf (“%lu+%lu=%lu\n”,m,i+1,m+(i+1));
}
}

正确例题
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char* a[16]={“蛋白质”,“脂肪”,“糖类<碳水化合物>”,“水”,“维生素”,“矿物质<无机盐>”,“纤维素<膳食纤维素>”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”};
int i,j,k,l,m,n;
printf(“\n输出7进制4位数生物营养公式\n”);
for(i=0;i<7;i++)
for(j=0;j<7;j++)
for(k=0;k<7;k++)
for(l=7;l<16;l++)
for(m=7;m<16;m++)
for(n=7;n<16;n++)
printf(“%s%sg%s%sg%s%sg\n”,a[i],a[l],a[j],a[m],a[k],a[n]);

}

正确例题
#include<stdio.h>
#include <stdlib.h>
#include<time.h>
int main()
{
char * a[12]={“鼠”,“牛”,“虎”,“兔”,“龙”,“蛇”,“马”,“羊”,“猴”,“鸡”,“狗”,“猪”};
char*b[1];
printf(“请输入要猜的字符串:\n”);
scanf(“%s”,&b[1]);
srand(time(NULL));
if(a[rand()%12]==b[1])
printf(“a=b,猜对了!\n”);
else if(a[rand()%12]>b[1])
printf(“a>b,猜大了!\n”);
else
printf(“a<b,猜小了!\n”);
printf(“\n”);
}

正确例题
#include <stdio.h>
int main()
{
int a=7;
int b;
printf(“请输入要猜的数字:\n”);
scanf(“%d”,&b);
if(a==b)
printf(“猜对了,你赢了\n”);
else
printf(“猜错了,你输了\n”);
}

正确例题
#include <stdio.h>
int main()
{
char a={‘Z’};
char b;
printf(“请输入要猜的字符:\n”);
scanf(“%c”,&b);
if(a==b)
printf(“猜对了,你赢了\n”);
else
printf(“猜错了,你输了\n”);
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
//假定这是密码
char *c[2]={“龙”,“马”};
char * a[12]={“鼠”,“牛”,“虎”,“兔”,“龙”,“蛇”,“马”,“羊”,“猴”,“鸡”,“狗”,“猪”};
char *s[2];
int i,j,n=0;
for (i=0; i<2; i++)
{
for (j=0; j<12; j++)
if (strcmp(a[j],c[i])0)
{
s[n++]=a[j];
break;
}
}
if(n
2)
{
printf(“密码运算成功!\n”);
printf(“密码为:%s%s\n”, s[0],s[1]);
}
return 0;
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
//假定这是密码
char *c[1]={“龙”};
char * a[12]={“鼠”,“牛”,“虎”,“兔”,“龙”,“蛇”,“马”,“羊”,“猴”,“鸡”,“狗”,“猪”};
char *s[1];
int i,j,n=0;
for (i=0; i<1; i++)
{
for (j=0; j<12; j++)
if (strcmp(a[j],c[i])0)
{
s[n++]=a[j];
break;
}
}
if(n
1)
{
printf(“密码运算成功!\n”);
printf(“密码为:%s\n”, s[0]);
}
return 0;
}

正确例题
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main()
{
char* a[14]={“蓝”,“红”,“橙”,“绿”,“紫”,“黑”,“灰”,“粉”,“白”,“黄”,“棕”,“青”,“褐”,“靛”};
char* b[10]={“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”};
int i,j,k,l,m,n,o,p;
printf(“\n输出10首14组7位数字符串:\n\n”);
srand(time(NULL)); // 种子
for (i=0;i<10;i++)/定义输出10首字符串/
{
printf(“\n”);
for (j=0;j<14;j++)/定义输出14组字符串/
{
for (k=0;k<7;k++)/定义每组7个字符串/
printf(“%s色%s小勺%s色%s小勺%s色%s小勺”,a[rand()%14],b[rand()%10],a[rand()%14],b[rand()%10],a[rand()%14],b[rand()%10]);
printf(“\n”);
}
printf(“\n\n”);
}
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
char a[] = “z”;
char b[1];
printf(“请输入要猜的字符:\n”);
scanf(“%s”,&b[0]);
if (strcmp(a,b) == 0)
printf(“猜对了,你赢了\n”);
else
printf(“猜错了,你输了\n”);
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
char a[] = “龙”;
char b[1];
printf(“请输入要猜的字符:\n”);
scanf(“%s”,&b[0]);
if (strcmp(a,b) == 0)
printf(“猜对了,你赢了\n”);
else
printf(“猜错了,你输了\n”);
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
char a[]=“龙王”;
char b[10];
printf(“请输入要猜的字:\n”);
scanf(“%s”,&b[0]);
if(strcmp(a,b)==0)
printf(“a=b,你赢了\n”);
else printf(“a≠b,你输了\n”);
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
char a[]=“石头”;
char b[10];
printf(“请输入要猜的字:\n”);
scanf(“%s”,&b[0]);
if(strcmp(a,b)==0)
printf(“a=b,猜对,你赢了!\n”);
else printf(“a≠b,猜错,你输了\n”);
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
char a[]=“石头”;
char b[]=“剪刀”;
char c[]=“布”;
char d[10];
printf(“请输入要猜的字:\n”);
scanf(“%s”,&d[0]);
if(strcmp(a,d)==0)
printf(“a=d,猜对,你赢了!\n”);
else if (strcmp(b,d) == 0)
printf(“b=d,猜对,你赢了!\n”);
else if (strcmp(c,d) == 0)
printf(“c=d,猜对,你赢了!\n”);
else printf(“d≠e,猜错,你输了\n”);
}

#include <stdio.h>
#include <string.h>
int main()
{
char a[]=“自强不息”;
char d[20];
printf(“请输入要猜的字:\n”);
scanf(“%s”,&d[0]);
if(strcmp(a,d)==0)
printf(“a=d,猜对,你赢了!\n”);
else printf(“d≠b,猜错,你输了\n”);
}

正确例题
#include <stdio.h>
#include <string.h>
int main()
{
char a[]=“自强不息”;
char b[]=“厚德载物”;
char d[20];
printf(“请输入要猜的字:\n”);
scanf(“%s”,&d[0]);
if(strcmp(a,d)==0)
printf(“a=d,猜对,你赢了!\n”);
else if(strcmp(b,d)==0)
printf(“b=d,猜对,你赢了!\n”);
else printf(“d≠c,猜错,你输了\n”);
}

正确例题
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main(void)
{
char* a[14]={“蓝”,“红”,“橙”,“绿”,“紫”,“黑”,“灰”,“粉”,“白”,“黄”,“棕”,“青”,“褐”,“靛”};
char* b[10]={“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”};
int i,j,k,l,m,n,o,p;
printf(“\n输出8张6行6列色块图像:\n\n”);
srand(time(NULL)); // 种子
for (i=0;i<8;i++)/定义输出10首字符串/
for (j=0;j<3;j++)/定义输出14组字符串/
{
for (k=0;k<6;k++)/定义输出14组字符串/
printf(“%s色%s色%s色%s色%s色%s色\n”,a[rand()%14],a[rand()%14],a[rand()%14],a[rand()%14],a[rand()%14],a[rand()%14]);
printf(“\n”);
}
}

正确例题
#include
using namespace std;
int main()
{
string a[2]= {“a”,“b”};
int i,j;
for(i=0; i<2; i++)
{
for(j=0; j<2; j++)
{
cout<<a[i]<<a[j]<<endl;
}
}
return 0;
}

正确例题
#include
using namespace std;
int main()
{
string a[2]= {“黑”,“白”};
int i,j;
for(i=0; i<2; i++)
{
for(j=0; j<2; j++)
{
cout<<a[i]<<a[j]<<endl;
}
}
return 0;
}

正确例题
#include
using namespace std;
int main()
{
string a[12]= {“鼠”,“牛”,“虎”,“兔”,“龙”,“蛇”,“马”,“羊”,“猴”,“鸡”,“狗”,“猪”};
int i,j;
for(i=0; i<12; i++)
{
for(j=0; j<12; j++)
{
cout<<a[i]<<a[j]<<endl;
}
}
return 0;
}

正确例题
#include
using namespace std;
int main()
{
string a[14]= {“蓝”,“红”,“橙”,“绿”,“紫”,“黑”,“灰”,“粉”,“白”,“黄”,“棕”,“青”,“褐”,“靛”};
int i,j;
for(i=0; i<14; i++)
{
for(j=0; j<14; j++)
{
cout<<a[i]<<a[j]<<endl;
}
}
return 0;
}

正确例题
#include
#include<time.h>
using namespace std;
int main()
{
string a[12]= {“鼠”,“牛”,“虎”,“兔”,“龙”,“蛇”,“马”,“羊”,“猴”,“鸡”,“狗”,“猪”};
srand((unsigned)time(NULL));
int i,j,k;
for(i=0;i<3;i++)
for(j=0;j<2;j++)
{
for(k=0;k<2;k++)
cout<<a[rand()%12]<<a[rand()%12]<<endl;
cout<<endl;
}
}

正确例题
#include
#include<time.h>
using namespace std;
int main()
{
string a[12]= {“鼠”,“牛”,“虎”,“兔”,“龙”,“蛇”,“马”,“羊”,“猴”,“鸡”,“狗”,“猪”};
srand((unsigned)time(NULL));
int i,j,k;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
{
for(k=0;k<3;k++)
cout<<a[rand()%12]<<a[rand()%12]<<a[rand()%12]<<endl;
cout<<endl;
}
}

正确例题
#include
#include<time.h>
using namespace std;
int main()
{
string a[12]= {“鼠”,“牛”,“虎”,“兔”,“龙”,“蛇”,“马”,“羊”,“猴”,“鸡”,“狗”,“猪”};
srand((unsigned)time(NULL));
int i,j,k;
for(i=0;i<2;i++)
for(j=0;j<4;j++)
{
for(k=0;k<4;k++)
cout<<a[rand()%12]<<a[rand()%12]<<a[rand()%12]<<a[rand()%12]<<endl;
cout<<endl;
}
}

正确例题
#include
using namespace std;
int main()
{
string a[29]={“蛋”,“大米”,“大豆”,“鸡肉”,“鱼肉”,“猪肉”,“花生”,“油”,“咸盐”,“酱”,“酸醋”,“甜糖”,“苦瓜”,“酒”,“辣椒”,“玉米”,“胡萝卜”,“白萝卜”,“菠菜”,“橙子”,“西红柿”,“牛奶”,“面包”,“3”,“5”,“6”,“7”,“8”,“9”};
int i,j,k,l,m,n;
printf(“\n输出28进制3位数律法理式\n”);
for(i=0;i<23;i++)
for(j=0;j<23;j++)
for(k=0;k<23;k++)

for(l=23;l<29;l++)
for(m=23;m<29;m++)
for(n=23;n<29;n++)
if(i!=j&&i!=k&&j!=i&&j!=k&&k!=i&&k!=j&&l!=m&&l!=n&&m!=l&&m!=n&&n!=l&&n!=m)
cout<<a[i]<<a[l]<<“g”<<a[j]<<a[m]<<“g”<<a[k]<<a[n]<<“g”<<endl;
}

freopen(“16进制4位数生物营养公式.txt”, “w”, stdout);

freopen(“14进制颜色4位数随机组合数配色公式.txt”, “w”, stdout);

freopen(“5进制颜色8张6行6列随机色块图像公式.txt”, “w”, stdout);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
实验一 C++简单程序设计(2学时) 1.编程计算图形的面积。程序可以计算圆形、长方形、正方形的面积、运行时先提示用户选择图形类型,然后,对圆形要求用户输入半径、对长方形要求用户输入长和宽的值,对正方形要求用户输入边长,计算出面积后将其显示出来。要求使用debug调试功能观察程序运行中变量值的变化情况。 2.定义一个表示时间的结构体,可以精确的表示年、月、日、小时、分、秒;提示用户输入年、月、日、小时、分、秒的值,然后完整地显示出来。 实验二 函数的应用(2学时) 1.编写重载函数Max1,分别求出两个整数,两个双精度数,三个整数,三个双精度数的最大值。 2.使用重载函数模板重新实现上面的函数Max1。 要求:(1)练习重载函数的使用;(2) 练习函数模板的使用。 实验三 类与对象(2学时) 1.声明一个Dog类,包含age、weight等属性,以及对这些属性操作的方法。实现并测试这个类。 2.设计并测试一个名为Rectangle的矩形类,其属性为矩形的左下角和右上角两个点的坐标,有成员函数能计算矩形的面积。 3.定义一个CPU类,包含等级、频率,电压等属性,并编写构造函数、析构函数,以及成员函数run、stop模拟CPU的状态。其中,等级为整型,频率为单位是兆赫兹的整数,电压为浮点型。要求自己设计各个属性的标识。 4.定义一个简单的Computer类,包含数据成员cpu、ram、cdrom等等,有两个成员函数run、stop。其中cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,定义并实现这个类。 5.(必做)设计一个用于人事管理的People类。考虑到通用性,可以只抽象出所有人员都 具有的属性:number(编号),sex(性别) ,birthday(出生日期),id(身份证号)等等。其中“出生日期”定义为一个“日期”类内嵌子对象。用成员函数实现对人员函数的录入和显示。要求包括:编写构造函数和析构函数、拷贝构造函数、内联成员函数,类的组合。 实验四 C++程序的结构(2学时) 1.编写程序,实现并测试客户机(Client)类。定义字符型静态数据成员ServerName[10],保存其服务器名称;整型静态数据成员ClientNum,记录定义的客户数量;定义静态函数ChangeServerName()改变服务器名称。在头文件client.h中定义类,在文件client.cpp中实现,在文件test.cpp中测试这个类,观察相应的成员变量的取值的变化情况。 2、在实验三题目5编写的人员类中设计适当的方法来实现类中数据的共享性,并采用多文件结构实现程序。 3.(选做)定义类X、Y、Z,函数h(X *),满足:类X有私有成员i,Y的成员函数g(X *)是X的友元函数,实现对X的成员i加1,类Z是类X的友元类,其成员函数f(X *)实现对X的成员i加5,函数h(X *)是X的友元函数,实现对X的成员i加10。在一个文件中声明类,在一个文件中实现类,在另一个文件中测试类。 实验五 继承和派生(2学时) 1.设计并定义一个交通工具类,并通过该类派生出新的类,编写程序定义这些类并测试它; 2.(选做)声明一个基类Shape,在此基础上派生Rectangle和Circle,二者都有GetArea()函数计算对象的面积,编写程序测试。 3.(选做)声明一个哺乳动物类Mammal,再由此派生出狗类Dog,定义一个Dog类的对象,观察基类与派生类的构造函数和析构函数的调用顺序。 4.完善实验四第2题的程序,具体要求如下: 任务1:从people(人员)类派生出student(学生)类,添加属性:学校、学院、专业、班号、入学成绩,设计相应的成员函数(构造函数,拷贝构造函数,录入函数,显示函数)。 任务2:从people类派生出teacher(教师)类,添加属性:职务,部门,职称。并设计相应的成员函数。 任务3:从student类派生出graduate(研究生)类,添加属性:导师,研究方向。并设计相应的成员函数。 任务4:编写程序来测试这个类。 实验六 小型学生管理系统的设计与实现1(2学时) 设计学生类、课程类、成绩类及相应的成员函数。要求能实现学生的信息、课程信息和成绩信息的增加、修改、删除与查询。 实验七 多态性(2学时) 1.定义Point类,有坐标X和Y两个成员变量,对Point类重载++和――运算符,实现对坐标值的改变。 2.定义一个车(Vehicle)类,有run,stop等成员函数,由此派生出自行车(bicycle)类、汽车(car)类,由bicycle类和car类派生出摩托车(motocar)类,它们都包含run,stop等成员函数,编写相应的虚函数并测试
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EYYLTV

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值