Coder Social home page Coder Social logo

hello-world's People

hello-world's Issues

Homework10

#include
using namespace std;
class Complex{
double real;
double ima;
public:
void SetReal(double x)
{
real = x;
}
void SetIma(double y)
{
ima = y;
}
double GetReal()
{
return real;
}
double GetIma()
{
return ima;
}
void PrintData()
{
cout<<"实部值为:"<<real<<" 虚部值为:"<<ima;
}
};
int main()
{
Complex test_num,*p;
p = &test_num;
test_num.SetReal(1.1);
test_num.SetIma(3.3);
test_num.GetReal();
test_num.GetIma();
test_num.PrintData();
p->SetReal(2.2);
p->SetIma(4.4);
p->GetReal();
p->GetIma();
p->PrintData();
return 0;
}

#include
using namespace std;
class Rectangle{
int length;
int width;
public:
void setLength(int x)
{
length = x;
}
void setWidth(int y)
{
width = y;
}
int getArea()
{
cout<<"Area="<<length*width<<endl;
}
};
int main()
{
Rectangle a;
int len,wid;
cout<<"请输入矩形的长和宽:"<<endl;
cin>>len>>wid;
a.setLength(len);
a.setWidth(wid);
a.getArea();
return 0;
}

data struct homework(episode1-2)

1、
#include
using namespace std;
typedef struct LNode
{
int data;
LNode *next;
}LNode,*linkList;
int creatList(linkList &L, int n) //创建链表
{
//正位序输入n个元素的值,建立带表头结点的单链表L
LNode *r;
L = new LNode;
L->next = NULL;
r = L;
cout<<"请输入数据"<<endl;
for(int i = 0 ; i < n; i++)
{
LNode *p;
p = new LNode;
cin>>p->data;
p->next = NULL;
r->next = p;
r = p;
}
}
void sort(linkList &LA,linkList &LB,linkList &LC)
{//合并两个非递减的有序表
LNode *pa,*pb,*pc,*p;
pa = LA->next;
pb = LB->next;
LC = pc = LA;
while(pa&&pb) //若LA与LB均未到达表尾,取较大值作为LC的节点
{
if(pa->data < pb->data)
{
pc->next = pa;
pc = pa;
pa = pa->next;
}
else if(pa->data > pb->data)
{
pc->next = pb;
pc = pb;
pb=pb->next;
}
else
{
pc->next = pa;
pc = pa;
pa = pa->next;
p = pb;
pb = pb->next;
delete p;
}
}
pc->next = pa ? pa : pb;
delete LB;
}
void show(linkList C)
{
int i = 0;
LNode *p;
p = C->next;
while (p) {
if (i)
cout << ",";
cout << p->data;
p = p->next;
i = 1;
}
}
int main()
{
cout<<"请建立两个按值非递减的有序链表"<<endl;
cout<<"请分别输入两个链表的长度"<<endl;
int x,y;
cin>>x>>y;
linkList A;
linkList B;
linkList C;
creatList(A,x);
creatList(B,y);
cout<<"两个表合并后为:"<<endl;
sort(A,B,C);
show(C);
return 0;
}

2、
#include
using namespace std;
typedef struct LNode
{
int data;
LNode *next;
}LNode,*linkList;
int creatList(linkList &L, int n)
{
L = new LNode;
L->next = NULL;
cout<<"请输入数据"<<endl;
for(int i = 0 ; i < n; i++)
{
LNode *p;
p = new LNode;
cin>>p->data;
p->next = L->next;
L->next = p;
}
}
void sort(linkList &LA,linkList &LB,linkList &LC)
{//合并两个非递减的有序表
LNode *pa,*pb,*pc;
pa = LA->next;
pb = LB->next;
LC = LA;
pc = LC;
while(pa&&pb) //若LA与LB均未到达表尾,取较大值作为LC的节点
{
if(pa->data>=pb->data)
{
pc->next = pa;
pc = pa;
pa = pa->next;
}
else
{
pc->next = pb;
pc = pb;
pb=pb->next;
}
}
pc->next = pa ? pa : pb;
delete LB;
}
void show(linkList C)
{
int i = 0;
LNode *p;
p = C->next;
while (p) {
if (i)
cout << ",";
cout << p->data;
p = p->next;
i = 1;
}
}
int main()
{
cout<<"请建立两个按值非递减的有序链表"<<endl;
cout<<"请分别输入两个链表的长度"<<endl;
int x,y;
cin>>x>>y;
linkList A;
linkList B;
linkList C;
creatList(A,x);
creatList(B,y);
cout<<"两个表合并后为:"<<endl;
sort(A,B,C);
show(C);
return 0;
}

3、
#include
using namespace std;
typedef struct LNode
{
int data;
LNode *next;
}*linkList;
int creatList(linkList &L,int n) //用前插法先创建两个链表A和B
{
LNode *p,*r;int i;
L=new LNode;
L->next=NULL;
r=L;
for(i=0;i<n;i++)
{
p=new LNode;
cin>>p->data;
p->next=NULL;
r->next=p;
r=p;
}
return 0;
}
void Mix(linkList &LA,linkList &LB,linkList &LC) //筛选出LA、LB两表数据相同的节点,并复制到LC表中
{
LNode *pa;LNode *pb;LNode *pc;LNode *p;
pa=LA->next;pb=LB->next;
LC=LA;
pc=LC;
while(pa&&pb)
{
if(pa->data==pb->data)
{
pc->next=pa;
pc=pa;
pa=pa->next;
pb=pb->next;
}
else if (pa->datadata)
pa=pa->next;
else
pb=pb->next;
}
pc->next=NULL;
LA=LC;
delete LB;
}

void show(linkList L)
{
LNode *p;
p=L->next;
while(p)
{
cout<data<<" ";
p=p->next;
}
}
int main()
{
linkList A,B,C;
cout<<"请输入A表的数据:"<<endl;
creatList(A,5);
cout<<"请输入B表的数据:"<<endl;
creatList(B,3);
Mix(A,B,C);
cout<<"合并后A表为:"<<endl;
show(A);
return 0;
}
4、
#include
using namespace std;
typedef struct LNode
{
int data;
LNode *next;
}*linkList;
void creatList(linkList &L,int n) //前插法创建链表
{
LNode *p;
L = new LNode;
L->next = NULL;
cout<<"请依次输入每个节点的数据:"<<endl;
for(int i=0 ; i<n ; i++)
{
p = new LNode;
cin>>p->data;
p->next = L->next;
L->next = p;
}
}
int search(linkList L,LNode *pa,LNode *pb) //找到 线性表中的一个最大的值
{
int target,n;
target=n=1;
pa = L->next;
pb = L->next;
while(pa)
{
if(pa->next->data > pb->data) //寻找最大值
{
pb = pa->next;
target = n;
}
pa = pa->next;
n++;
}
return target;
}
void searchSame(linkList L, LNode *pb) //遍历并取出有多个最大的值的情况
{
LNode *pc;
int a,i;
int array[88];
a = 1;
pc = L->next;
while(pc)
{
if(pc->data == pb->data) //寻找与最大值数据相等的节点
{
array[i]=a;
i++;
}
pc = pc->next;
a++;
}
cout<<"最大值所在的节点有"<<endl;
for(i = 0;array[i] == 0;i++)
{
cout<<array[i]<<endl;
}
}
int main()
{
int length;
linkList L;
LNode *pa,*pb;
cout<<"请输入创建的链表长度:"<<endl;
cin>>length;
creatList(L,length);
search(L,pa,pb);
searchSame(L,pb);
return 0;
}

Homework5

1、
#include
using namespace std;
double average(double a,double b,double c,double d)
{
double average4;
cin>>a>>b>>c>>d;
average4=(a+b+c+d)/4;
return average4;
}
int main()
{
double w,x,y,z;
cout<<"请输入四个数:"<<endl;
cout<<"这四个数的平均数为:"<<average(w,x,y,z)<<endl;
return 0;
}

2、
#include
using namespace std;
void small(int,int);
void small(double,double);
int main()
{
int a,b;
double c,d;
cout<<"请输入两个整数:"<<endl;
cin>>a>>b;
small(a,b);
cout<<"请输入两个实数:"<<endl;
cin>>c>>d;
small(c,d);
}
void small(int x,int y)
{
if(x>y) cout<<"较小数为:"<<y<<endl;
else cout<<"较小数为:"<<x<<endl;
}
void small(double x,double y)
{
if(x>y) cout<<"较小数为:"<<y<<endl;
else cout<<"较小数为:"<<x<<endl;
}
3、
#include
using namespace std;
int transform(int);
int main()
{
int a;
cout<<"请输入一个十进制数:"<<endl;
cin>>a;
if(a==0) cout<<"0的二进制数为:"<<0<<endl;
else
{
cout<<"该数字的二进制数为:";
transform(a);
}
return 0;
}
int transform(int x)
{
if(x==0)
return 0;
else
{
transform(x/2);
cout<<x%2;
}
}

Homework4

1、How to judge leap year?
#include
using namespace std;
int main()
{
int age;
cout<<"请输入一个年份:"<<endl;
cin>>age;
if(age%4==0&&age%100!=0) cout<<"该年份为闰年"<<endl;
else if(age%400==0) cout<<"该年份为闰年"<<endl;
else cout<<"该年份不是闰年"<<endl;
return 0;
}

2、hourglass
#include
#include
using namespace std;
int main()
{
int j,x;
for(int i=1;i<=4;i++)
{
j=2i-1;
switch(j)
{
case 1:cout<<" ";break;
case 3:cout<<" ";break;
case 5:cout<<" ";break;
case 7:cout<<" ";break;
}
for(;j<=7;j++)
cout<<"
";
cout<<endl;
}
for(int k=1;k<=3;k++)
{
switch(k)
{
case 1:cout<<" ";break;
case 2:cout<<" ";break;
case 3:cout<<" ";break;
}
for(int x=1;x<=2k+1;x++)
cout<<"
";
cout<<endl;
}
return 0;
}

3、Character statistics
#include
using namespace std;
int main()
{
char ch;
int sp=0,bl=0,sl=0,els=0,num=0;
while(1)
{
ch=cin.get();
if(ch=='\n')
break;
else if(ch==' ')
sp++;
else if(ch>='A'&&ch<='Z')
bl++;
else if(ch>='a'&&ch<='z')
sl++;
else if(ch>='1'&&ch<='9')
num++;
else els++;
}
cout<<"大写字母数:"<<bl<<endl;
cout<<"小写字母数:"<<sl<<endl;
cout<<"数字个数:"<<num<<endl;
cout<<"其它字符数:"<<els<<endl;
cout<<"空格数:"<<sp<<endl;
return 0;
}

Four arithmetic system(made by C++)

#include"pch.h"
#include
#include <stdlib.h>
#include <time.h>
#include
using namespace std;

double sum(double x, double y)
{
double z;
z = x + y;
return z;
}
double sub(double x, double y)
{
double z;
z = x - y;
return z;
}
double mul(double x, double y)
{
double z;
z = x * y;
return z;
}
double div(double x, double y)
{
double z;
z = x / y;
return z;
}

int func_r1(char b2, char d2, int d3, int d4)
{
if (b2 == '1' && d2 == '1')
{
cout << "\n(输出的随机数范围以 十 进 制 为标准)\n\n";
return rand();

}

if (b2 == '1' && d2 == '2')
{

	cout << "\n(输出的随机数范围以 十 进 制 为标准)\n\n";
	return (rand() % (d4 - d3) + d3);
}

if (b2 == '2')
{
	char char1;
	cout << "输入一个字符:\n";
	cin >> char1;
	return int(char1);
}

}

int func_r2(char b2, char d2, int d3, int d4)
{
if (b2 == '1' && d2 == '1')
{
return rand();
}

if (b2 == '1' && d2 == '2')
{
	return (rand() % (d4 - d3) + d3);
}

if (b2 == '2')
{
	char char2;
	cout << "输入一个字符:\n";
	cin >> char2;
	return int(char2);
}

}

char func_n1(char a2)
{
switch (a2)
{
case('1'): return '+'; break;
case('2'): return '-'; break;
case('3'): return ''; break;
case('4'): return '/'; break;
case('5'): return '+'; break;
case('6'): return '
'; break;
}
}

char func_n2(char a2)
{
switch (a2)
{
case('5'): return '-'; break;
case('6'): return '/'; break;
}
}

void func_c(char a2, char b2, char c2, char d2, int d3, int d4, char e2)
{
srand(time(NULL));

switch (e2)
{
case '1':
	while (true)
	{
		switch (c2)
		{
		case'1': cout << oct << func_r1(b2, d2, d3, d4) << func_n1(a2) << func_r2(b2, d2, d3, d4) << '=' << '?' << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << oct << func_r1(b2, d2, d3, d4) << func_n2(a2) << func_r2(b2, d2, d3, d4) << '=' << '?' << endl;
				break;
			}

		case'2': cout << dec << func_r1(b2, d2, d3, d4) << func_n1(a2) << func_r2(b2, d2, d3, d4) << '=' << '?' << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << dec << func_r1(b2, d2, d3, d4) << func_n2(a2) << func_r2(b2, d2, d3, d4) << '=' << '?' << endl;
				break;
			}

		case'3': cout << hex << func_r1(b2, d2, d3, d4) << func_n1(a2) << func_r2(b2, d2, d3, d4) << '=' << '?' << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << hex << func_r1(b2, d2, d3, d4) << func_n2(a2) << func_r2(b2, d2, d3, d4) << '=' << '?' << endl;
				break;
			}
		}

		cout << ".................................................................................\n";
		cout << "继续按1, 返回出题模块菜单按0:\n";
		char m;
		cin >> m;
		if (m == '0') break;
	}
	break;

case '2':
	while (true)
	{
		switch (c2)
		{
		case'1': cout << oct << '?' << func_n1(a2) << func_r2(b2, d2, d3, d4) << '=' << func_r1(b2, d2, d3, d4) << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << oct << '?' << func_n2(a2) << func_r2(b2, d2, d3, d4) << '=' << func_r1(b2, d2, d3, d4) << endl;
				break;
			}

		case'2': cout << dec << '?' << func_n1(a2) << func_r2(b2, d2, d3, d4) << '=' << func_r1(b2, d2, d3, d4) << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << dec << '?' << func_n2(a2) << func_r2(b2, d2, d3, d4) << '=' << func_r1(b2, d2, d3, d4) << endl;
				break;
			}

		case'3': cout << hex << '?' << func_n1(a2) << func_r2(b2, d2, d3, d4) << '=' << func_r1(b2, d2, d3, d4) << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << hex << '?' << func_n2(a2) << func_r2(b2, d2, d3, d4) << '=' << func_r1(b2, d2, d3, d4) << endl;
				break;
			}
		}

		cout << ".................................................................................\n";
		cout << "继续按1, 返回出题模块菜单按0:\n";
		char m;
		cin >> m;
		if (m == '0') break;
	}
	break;

case '3':
	while (true)
	{
		switch (c2)
		{
		case'1': cout << oct << func_r1(b2, d2, d3, d4) << func_n1(a2) << '?' << '=' << func_r2(b2, d2, d3, d4) << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << oct << func_r1(b2, d2, d3, d4) << func_n2(a2) << '?' << '=' << func_r2(b2, d2, d3, d4) << endl;
				break;
			}

		case'2': cout << dec << func_r1(b2, d2, d3, d4) << func_n1(a2) << '?' << '=' << func_r2(b2, d2, d3, d4) << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << dec << func_r1(b2, d2, d3, d4) << func_n2(a2) << '?' << '=' << func_r2(b2, d2, d3, d4) << endl;
				break;
			}

		case'3': cout << hex << func_r1(b2, d2, d3, d4) << func_n1(a2) << '?' << '=' << func_r2(b2, d2, d3, d4) << endl;
			if (a2 == '1' || a2 == '2' || a2 == '3' || a2 == '4')
				break;
			if (a2 == '5' || a2 == '6')
			{
				cout << hex << func_r1(b2, d2, d3, d4) << func_n2(a2) << '?' << '=' << func_r2(b2, d2, d3, d4) << endl;
				break;
			}
		}

		cout << ".................................................................................\n";
		cout << "继续按1, 返回出题模块菜单按0:\n";
		char m;
		cin >> m;
		if (m == '0') break;
	}
	break;
}

}

int main1(void)
{
int i = 0;
while (true)
{
cout << ".................................................................................\n";
cout << " >>>出题模块<<< \n";
cout << "a.选择运算类型:\n";
cout << "a1. 加法 a2. 减法 a3. 乘法\n";
cout << "a4. 除法 a5. 加减法 a6. 乘除法\n\n";
cout << "b.选择随机数产生方法:\n";
cout << "b1. rand() b2. 字符常量\n\n";
cout << "c.选择进制类型:\n";
cout << "c1. 八进制(oct) c2. 十进制(dec) c3. 十六进制(hex)\n\n";
cout << "d.选择数值范围:\n";
cout << "d1. 无范围 d2. 有范围\n\n";
cout << "e.选择题目类型:\n";
cout << "e1.求结果,如1+2=? e2.求操作数,如?+2=3 e3. 求操作数,如1+?=3\n\n";

	cout << "*若用rand()产生随机数且数值无范围,输入方式如[a1] b1 [c1] d1 [0] [0] [e1]\n";
	cout << "*若用rand()产生随机数且数值有范围,为[a, b],输入方式如[a1] b1 [c1] d2 a b+1 [e1]\n";
	cout << "*若用字符常量产生随机数,输入方式如[a1] b2 [c1] [d1] [0] [0] [e1]\n\n";
	cout << "注:1.此模块出题的数是正整数\n    2.上方中括号里面内容数字可替换\n    3.输出的随机数范围以 十 进 制 为标准\n    4.若选d2,输入的第二个数值不能大于2147483647\n    5.若选d2,输入的第二个数应大于第一个数\n    6.若除法运算产生值为0的除数,请忽略此题,按1进入下一题\n";
	cout << "\n按0退出\n";
	cout << ".................................................................................\n";

	
	cout << "按1开始, 按0退出:\n";
	char b3;
	cin >> b3;
	
	if (b3 == '0') break;



	if (i != 0)
	{
		cout << "继续输入按1, 退出自动出题系统按0:\n";
		char m;
		cin >> m;
		if (m == '0') break;
	}

	cout << "请按上述格式输入各选项:\n";
	char a1, a2, b1, b2, c1, c2, d1, d2, e1, e2;
	int d3, d4;
	double d5;
	cin >> a1 >> a2 >> b1 >> b2 >> c1 >> c2 >> d1 >> d2 >> d3 >> d5 >> e1 >> e2;



	while (d5 > 2147483647)
	{
		cout << "\n数值范围较大的数应小于等于2147483647!\n";
		cout << "请重新输入数值范围!格式为: 较小的数<空格>较大的数:\n";
		cin >> d3 >> d5;
	}
	d4 = int(d5);

	func_c(a2, b2, c2, d2, d3, d4, e2);

	i++;
}
return 0;

}

int main2()
{
char op, ch;
double a, b, c;

do 
{
	cout << "按1开始四则运算, 按0退出:\n";
	char b3;
	cin >> b3;

	if (b3 == '0') break;

	cout << "请输入运算符号:" << endl;
	cin >> op;
	cout << "请分别输入两个数:" << endl;
	cin >> a >> b;
	while (op == '/'&&b == 0)
	{
		cout << "除数不能为0,请重新输入两个数:" << endl;
		cin >> a >> b; break;
	}
	switch (op)
	{
	case'+':c = sum(a, b); break;
	case'-':c = sub(a, b); break;
	case'*':c = mul(a, b); break;
	case'/':c = div(a, b); break;
	default:cout << "由于运算符非法,无法进行运算." << endl;
	}
	cout << "结果为:" << c << endl;
	cout << "-----------------------" << endl;
	cout << "按f继续运算,按其它键退出四则运算系统" << endl;
	cin >> ch;
} while (ch == 'f');
return 0;

}

int main()
{
int i = 0;
while (true)
{
cout << setw(80) << "********" << endl;
cout << setw(80) << "欢迎使用计算系统 " << endl;
cout << setw(80) << "1.自动出题系统 " << endl;
cout << setw(80) << "2.四则运算系统 " << endl;
cout << setw(80) << "0.退出计算系统 " << endl;
cout << setw(80) << "
" << endl;

	if (i != 0)
	{
		cout << "继续按1,退出计算系统按0:\n";
		char m;
		cin >> m;
		if (m == '0') break;
	}

	cout << setw(73) << "请按相应数字进入对应系统:" << endl;

	char a;
	cin >> a;
	if (a == '1') main1();
	if (a == '2') main2();
	if (a == '0') break;

	i++;
}
return 0;

}

Thanks my teammate——J.Y. HE

data struct homeworck1

#include
#include<stdlib.h>
#include
#include
#define ERROR -1
#define MAXSIZE 1000
#define OVERFLOW -2
using namespace std;
int choice = -1;
struct list //建立线性表类型
{
string name;
int price;
} ;
struct SqList //建立线性表的地址与长度
{
list elem;
int length;
};
void menu()
{
cout<<"
"<<endl;
cout<<"顺序表的实现"<<endl;
cout<<"1、建立顺序表"<<endl;
cout<<"2、输入数据"<<endl;
cout<<"3、查找某序号数据"<<endl;
cout<<"4、查找指定数据"<<endl;
cout<<"5、插入数据"<<endl;
cout<<"6、删除数据"<<endl;
cout<<"7、输出数据"<<endl;
cout<<"0、退出"<<endl;
cout<<"
*"<<endl;
}
void back()
{
system("cls");
menu();
cin>>choice;
}
int InitList(SqList &L) //创建线性表
{
L.elem = new list[MAXSIZE];
if(!L.elem) exit(OVERFLOW);
L.length = 0;
cout<<"线性表已创立"<<endl;
return 1;

}
int searchId(SqList L,int a, list X) //搜索特定序号的数据
{
if(a<1||a>L.length)
{
cout<<"查找不到该元素"<<endl;
return ERROR;
}

X.name = L.elem[a-1].name;
X.price = L.elem[a-1].price;

cout<<"该序号对应的数据为:"<<X.name<<endl;
cout<<X.price<<endl;

}
int searchData(SqList L,string e) //搜索指定数据
{
for(int i = 0; i<L.length; i++)
{
if(L.elem[i].name == e) return i+1;
else {
cout<<"找不到该数据"<<endl;
return 0;
}
}
}
int listInsert(SqList &L,int i,list e) //插入数据
{
if((i<1)||(i>L.length+1)) {
cout<<"该插入位置不被允许"<<endl;
return ERROR;
} //判断插入的位置是否正确
if(L.length == MAXSIZE)
return ERROR; //存储空间已满

for (int j = L.length - 1; j >= i - 1; j--)
	L.elem[j + 1] = L.elem[j]; //插入位置及之后的元素后移
L.elem[i - 1] = e; //将新元素e放入第i个位置
++L.length; //表长增1
 return 1;
 cout<<"数据已插入"<<endl;

}
int listDelete(SqList &L,int i) //删除数据
{
if((i<1)||(i>L.length)) return ERROR;
for(int j=i; j<=L.length-1; j++)
{
L.elem[j-1] = L.elem[j];
}
L.length--;
return 1;
cout<<"数据已删除"<<endl;

}
void listShow(SqList L) //输出数据
{
for(int i=0; i<L.length; i++)
{
cout<<L.elem[i].name<<" "<<L.elem[i].price<<endl;
}

}

int main()
{
menu();
SqList L;
list y;
string head_1,head_2,head_3;
do
{
cout<<"请输入相应数字使用下列功能:"<<endl;
cin>>choice;
switch(choice)
{
case 1 : InitList(L);
break;
case 2 : {
int i = 0;
L.elem = new list[MAXSIZE];
if (!L.elem)
exit(OVERFLOW);
L.length = 0;
fstream file;
file.open("hi.txt");
if (!file) {
cout << "错误!未找到文件!" << endl;
exit(ERROR);
}
file >> head_1 >> head_2;
while (!file.eof()) {
file >> L.elem[i].name >> L.elem[i].price;
i++;
}
cout << "输入 hi.txt 信息完毕\n\n";
L.length = i;
file.close();
}
break;
case 3 : {
cout<<"请输入你想查找的序号:"<<endl;
int ID;
cin>>ID;
searchId(L,ID,y) ;
break;
}
case 4 : {
string z;
int temp;
cout<<"请输入你想查找的商品名:"<<endl;
cin>>z;
temp = searchData(L,z);
cout<<"该商品的价格为:"<<L.elem[temp - 1].price<<endl;
break;
}
case 5 : {
int w;
list y;
cout<<"请输入你想插入到表格的第几个节点"<<endl;
cin>>w;
cout<<"请分别输入商品的名字与价格"<<endl;
cin>>y.name>>y.price;
listInsert(L,w,y);
break;
}
case 6 :{
int g;
cout<<"请输入你想删除的节点"<<endl;
cin>>g;
listDelete(L,g);
break;
}
case 7 : {
cout<<"下面是线性表的全部数据:"<<endl;
listShow(L);
break;
}
case 0 : cout<<"你已退出系统!"<<endl; break;
}
}
while(choice!=0);

return 0;
}

Homework8

1、#include
#include
using namespace std;
struct student
{
int num;
char name[20];
float score;
};
student Input(student &stud)
{
cout<<"请输入学生的学号、姓名、分数:"<<endl;
cin>>stud.num>>stud.name>>stud.score;
}
void Output(student &stud)
{
cout<<setw(10)<<stud.num<<setw(20)<<stud.name<<setw(10)<<stud.score<<endl;
}
int main()
{
int i;
student stud[3];
for(i=0;i<3;i++)
Input(stud[i]);
cout<<setw(10)<<"学号"<<setw(20)<<"姓名"<<setw(10)<<"分数"<<endl;
for(i=0;i<3;i++)
Output(stud[i]);
cout<<endl;
cout<<"分数最高的学生为:"<<endl;
if(stud[1].score>stud[2].score&&stud[1].score>stud[3].score)
Output(stud[1]);
else if(stud[2].score>stud[1].score&&stud[2].score>stud[3].score)
Output(stud[2]);
else if(stud[3].score>stud[1].score&&stud[3].score>stud[2].score)
Output(stud[3]);
return 0;
}

2、#include
#include
using namespace std;
struct address
{
int x;
int y;
int z;
};
int squ(int w)
{
int i;
i=w*w;
return i;
}
int main()
{
int b,c,d;
double a;
address addr1,addr2;
cout<<"请输入第一个点的三维坐标:"<<endl;
cin>>addr1.x>>addr1.y>>addr1.z;
cout<<"请输入第两个点的三维坐标:"<<endl;
cin>>addr2.x>>addr2.y>>addr2.z;
b=squ(addr1.x-addr2.x);
c=squ(addr1.y-addr2.y);
d=squ(addr1.z-addr2.z);
a=sqrt(b+c+d);
cout<<"两点的距离为:"<<a<<endl;
cout<<"第一个点的三维坐标为:"<<addr1.x<<","<<addr1.y<<","<<addr1.z<<endl;
cout<<"第二个点的三维坐标为:"<<addr2.x<<","<<addr2.y<<","<<addr2.z<<endl;
return 0;
}

3、#include
using namespace std;
enum week{Sunday=7,Monday=1,Tuesday,Wednesday,Thursday,Friday,Saturday};
void print(week a)
{
switch(a)
{
case Monday: cout<<"Monday"; break;
case Tuesday: cout<<"Tuesday"; break;
case Wednesday: cout<<"Wednesday"; break;
case Thursday: cout<<"Thursday"; break;
case Friday: cout<<"Friday"; break;
case Saturday: cout<<"Saturday"; break;
case Sunday: cout<<"Sunday"; break;
default: break;
}
}
int main()
{
week i,j,g;
cout<<"请输入今天是星期几:"<<endl;
cin>>(int&)i;
j=week(int (i)+100%7);
g=week(int (i)+100%7-7);
cout<<"100天后是:"<<endl;
if(j<=7)
print(j);
else
print(g);
return 0;
}

4、#include
using namespace std;
struct date
{
int year;
int month;
int day;
};
int main()
{
int count_day,i;
int month_day[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
date d1;
cout<<"请分别输入年月日:"<<endl;
cin>>d1.year>>d1.month>>d1.day;
count_day=d1.day;
if((d1.year%4==0&&d1.year%100!=0)||d1.year%400==0)
month_day[2]=29;
for(i=0;i<d1.month;i++)
count_day=count_day+month_day[i];
cout<<"这一天是该年的第"<<count_day<<"天"<<endl;
return 0;
}

5、#include
#include
using namespace std;
enum color{Red,Blue,Green};
int main()
{
void print(color);
color i,j,k;
int count;
for(i=Red;i<=Green;i=color((int(i))+1))
for(j=Red;j<=Green;j=color((int(j))+1))
if(i!=j)
for(k=Red;k<=Green;k=color((int(k))+1))
if((k!=i)&&(k!=j))
{
cout<<setw(15)<<++count;
print(i);
print(j);
print(k);
cout<<endl;
}
cout<<"三种颜色一共能组成的组合数为:"<<count<<endl;
return 0;
}
void print(color a)
{
switch(a)
{
case Red: cout<<setw(15)<<"Red"; break;
case Blue: cout<<setw(15)<<"Blue"; break;
case Green: cout<<setw(15)<<"Green"; break;
default: break;
}
}

Homework 1

(1)#include
using namespace std;
int main(void)
{
int x,y,z;
cout<<"Hello,GDUFS!\n";
cout<<"请输入两个整数:";
cin>>x>>y;
z=x+y;
cout<<"得出的两数之和为:"<<z;
return 0;
}

(2)#include
using namespace std;
int main(void)
{
cout<<"^"<<" "<<"^\n";
cout<<" "<<"-"<<" "<<" "<<"Happy Mid-Autumn Festival!"<<endl;
return 0;
}

Homework2

part1:#include
using namespace std;
int main()
{
int x,y;
char a,b;
cin>>x>>a>>y>>b;
a=a-90,b=b-90;
cout<<"x="<<x<<" "<<"y="<<y<<" "<<"a='"<<int(a)<<"' "<<"b='"<<int(b)<<"'"<<endl;
return 0;
}

part2:
#include
#include
using namespace std;
int main()
{
char ch[5];
int sp;
sp=0;
cin.get(ch,sizeof(ch));
for(int i=0;i<sizeof(ch);i++)
{
if(ch[i]==' ') sp++;
}
cout<<"空格个数为:"<<sp<<endl;
return 0;
}
part3:#include
#include<math.h>
#include
using namespace std;
int main()
{
double a,b,c,s,Area;
cout<<"请分别输入三角形的三边长度:"<<endl;
cin>>a>>b>>c;
s=(a+b+c)/2;
Area=sqrt(s* (s-a) * (s-b)*(s-c));
cout <<setiosflags(ios::fixed);
cout<<"三角形的面积为:"<<setprecision(2)<<Area<<endl;
return 0;
}

Homework9

1、
#include
using namespace std;
void swap(intx,inty,int*z)
{
int t,i;
if(*x>*y&&*x>*z&&*y<*z)
{
t=*y;
*y=*z;
*z=t;
}
if(*x<*y&&*z<*y&&*x<*z)
{
t=*x;
*x=*y;
*y=*z;
*z=t;
}
if(*x<*y&&*z<*y&&*x>*z)
{
t=*x;
*x=*y;
*y=t;
}
if(*z>*y&&*z>*x&&*y<*x)
{
t=*x;
i=*y;
*x=*z;
*y=t;
*z=i;
}
if(*z>*y&&*z>*x&&*x<*y)
{
t=*x;
*x=*z;
*z=t;
}
}
int main()
{
int max,mid,min;
cout<<"请输入三个整数:"<<endl;
cin>>max>>mid>>min;
swap(&max,&mid,&min);
cout<<"三个数由小到大为:"<<endl;
cout<<min<<" "<<mid<<" "<<max;
return 0;
}

2、
#include
using namespace std;
void select_odd_index(charx,chary)
{
int i;
for(i=0;*x!='\0';i++,x++)
{
if(i%2!=0)
{
*y=*x;
cout<<*y;
}
}
}
int main()
{
char str1[1005];
char str2[1005];
cout<<"请输入一串字符串:"<<endl;
cin.getline(str1,1005);
select_odd_index(str1,str2);
//cout<<str2<<endl;
return 0;
}

3、
#include
#include
using namespace std;
int find(int a[][5],int *x,int *y)
{
int i,j,max,j_max,span;
for(i=0;i<4;i++)
{
max=a[i][0];
j_max=0;
for(j=1;j<5;j++)
if(a[i][j]>max)
{
*x=i;
*y=j;
max=a[i][j];
j_max=j;
}
span=1;
for(int k=0;k<4;k++)
if(a[k][j_max]<max)
{
span=0;
break;
}
if(span)
return (1);
}
return (0);
}

int main()
{
int *p;
int i,j;
int a[4][5]={5,4,78,8,91,2,5,6,34,9,5,1,3,6,4,15,9,1,7,31};
cout<<"该二维数组为:"<<endl;
for (p = a[0]; p<a[0] + 20; p++)
{
if ((p - a[0]) % 5 == 0) cout << endl;
cout << setw(5) << *p;
}
cout << endl;
if(find(a,&i,&j))
{
cout<<"鞍点为:"<<endl;
cout<<"a["<<i<<"]["<<j<<"]="<<a[i][j]<<endl;
}
else cout<<"404 Not Found!"<<endl;
return 0;
}

Homework7

1、
#include
using namespace std;
void add(int a[], int ha, int b[], int hb, int c[])
{
int i,j,k=0;
for(i=0,j=0;i<ha&&j<hb;)
{
if(a[i]<b[j])
{
c[k++]=a[i++];
}
else
{
c[k++]=b[j++];
}
}
while(i<ha)
{
c[k++]=a[i++];
}
while(j<hb)
{
c[k++]=b[j++];
}
}
int main()
{
int h1,h2,x,y;
cout<<"请输入两个数组所具有的数的个数:"<<endl;
cin>>h1>>h2;
int h3=h1+h2;
int a[h1],b[h2],c[h3];
cout<<"请分别按升序输入a、b数组的数:"<<endl;
for(x=0;x<h1;x++)
cin>>a[x];
for(y=0;y<h2;y++)
cin>>b[y];
add(a,h1,b,h2,c);
for(int i=0;i<h3;i++)
cout<<c[i]<<"\t";
return 0;
}

2、
#include
using namespace std;
void sum(int array[][3])
{
int count,i,j;
cout<<"请输入二维数组的所有数字:"<<endl;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
cin>>array[i][j];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i==0||i==2||j==0||j==2)
count+=array[i][j];
cout<<"周边元素和为:"<<count<<endl;
cin>>array[i][j];
}
int main()
{
int a[3][3];
sum(a);
return 0;
}

3、
#include
using namespace std;
int main()
{
char se;
char array[2000];
int n,i,num=0;
cout<<"请输入一句话:"<<endl;
do{
cin.get(se);
if(se>='A'&&se<='Z')
{
se=se+32;
}
array[num++]=se;
}
while(se!='\n');
num=num-1;
for(i=0;i<=num;i++)
{
if(array[i]=='t'&&array[i+1]=='h'&&array[i+2]=='e'&&array[i+3]==' ')
n++;
else if(i+2==num-1&&array[i-1]==' '&&array[i]=='t'&&array[i+1]=='h'&&array[i+2]=='e')
n++;
}
cout<<"单词the的数目为:"<<n<<endl;
return 0;
}

4、
#include
using namespace std;
int transform16(int x,char a[])
{
int y,i,k=0,z;
do
{
y=x%16;
x=x/16;
for(i=0;i<=9;i++)
{
if(y==i)
{
a[k++]='0'+i;
}
}
for(i=10;i<=15;i++)
{
if(y==i)
{
z=i-10;
a[k++]='A'+z;
}
}
}
while(x!=0);
for(int i=0;i<=k-1;i++)
{
cout<<a[k-1-i];
}
}
int main()
{
int num;
char array[100];
cout<<"请输入一个十进制的数:"<<endl;
cin>>num;
cout<<"该数的十六进制为:"<<endl;
transform16(num,array);
return 0;
}

5、
#include
using namespace std;
int palindrome(int x,int y[],int z[])
{
int n;
int i;
cout<<"请输入数字和它的位数:"<<endl;
cin>>x>>n;
if(n==1)
cout<<"这是回文数"<<endl;
else if(n>=2)
{
for(i=0;i<n;i++)
{
y[i]=x%10;
x=x/10;
}
cout<<"再按顺序分别输入该数的每一位数:"<<endl;
for(i=0;i<n;i++)
{
cin>>z[i];
}
for(i=0;i<n;i++)
{
if(y[i]==z[i])
{
cout<<"这是回文数"<<endl;
break;
}
}
}
else cout<<"这不是回文数"<<endl;
}
int main()
{
int num;
int array[100];
int check[100];
palindrome(num,array,check);
return 0;
}

experiment6

1、
#include
using namespace std;
void ba_ins_sort(int a[], int n)
{
int i, j, p;
for(i=1; i<n; i++)
{
p=a[i];
for(j=i-1; j>=0&&p>a[j]; j--)
a[j+1]=a[j];
a[j+1]=p;
}
}
int main()
{
int b,i;
int a[10];
b=10;
cout<<"请输入十名同学的成绩:"<<endl;
for(i=0;i<10;i++)
cin>>a[i];
ba_ins_sort(a,b);
cout<<"该十名同学的成绩排行为:"<<endl;
for(i=0;i<10;i++)
cout<<a[i]<<" ";
return 0;
}

2、
#include
#include
using namespace std;
int main()
{
int a[4][3]={{89,78,56},{88,99,100},{72,80,61},{60,70,75}};
int average[3];
int student[4];
int i,j,x,y;
average[0]=(a[0][0]+a[1][0]+a[2][0]+a[3][0])/4;
average[1]=(a[0][1]+a[1][1]+a[2][1]+a[3][1])/4;
average[2]=(a[0][2]+a[1][2]+a[2][2]+a[3][2])/4;
student[0]=(a[0][0]+a[0][1]+a[0][2])/3;
student[1]=(a[1][0]+a[1][1]+a[1][2])/3;
student[2]=(a[2][0]+a[2][1]+a[2][2])/3;
student[3]=(a[3][0]+a[3][1]+a[3][2])/3;
cout<<" 课程1 课程2 课程3 个人平均分"<<endl;
cout<<"学生1"<<setw(10)<<a[0][0]<<setw(10)<<a[0][1]<<setw(10)<<a[0][2]<<setw(10)<<student[0]<<endl;
cout<<"学生2"<<setw(10)<<a[1][0]<<setw(10)<<a[1][1]<<setw(10)<<a[1][2]<<setw(10)<<student[1]<<endl;
cout<<"学生3"<<setw(10)<<a[2][0]<<setw(10)<<a[2][1]<<setw(10)<<a[2][2]<<setw(10)<<student[2]<<endl;
cout<<"学生4"<<setw(10)<<a[3][0]<<setw(10)<<a[3][1]<<setw(10)<<a[3][2]<<setw(10)<<student[3]<<endl;
cout<<"课程平均分 "<<average[0]<<setw(10)<<average[1]<<setw(10)<<average[2]<<endl;
return 0;
}

3、
#include
#include
using namespace std;

int numwords(char string[])
{
int i,num;
char c= ' ';

for (i=num=0; string[i]!='\0'; i++)
{
	if (c== ' '&& string[i]!= ' ')num++;
	c=string[i];
}
return num;

}

int main( )
{
char string[1005];
int num;
cout<<"输入一行字符:";
cin.getline(string, 1005);
num=numwords(string);
cout<<"字符串中包含的单词个数为:"<<num<<endl;
return 0;
}

experiment9

1.#include
#include
using namespace std;

class CRect
{
private:
int left, top, right, bottom;
public:
void setcoord(int, int, int, int);
void getcoord(int *L, int *T, int *R, int *B)
{
*L = left; *T = top; *R = right; *B = bottom;
}
void print(void)
{
cout << "Area = " << abs(right - left)*abs(bottom - top) << endl;
}
};

void CRect::setcoord(int L, int T, int R, int B)
{
left = L; top = T; right = R; bottom = B;
}

int main(void)
{
CRect r1, r2;
int a, b, c, d;

r1.setcoord(100, 300, 50, 200);
r1.getcoord(&a, &b, &c, &d);  	
cout << "left=" << a << '\t' << "top=" << b << endl;
cout << "right=" << c << '\t' << "bottom=" << d << endl;
r1.print();
r2 = r1;      						
r2.print();
return 0;

}

2.#include
using namespace std;

class Date
{
int Year, Month, Day;
public:
Date(int y = 2000, int m = 1, int d = 1)
{
Year = y; Month = m; Day = d;
cout << "Constructor: ";
ShowDate();
}
void ShowDate()
{
cout << Year << '.' << Month << '.' << Day << endl;
}
~Date()
{
cout << "Destructor: ";
ShowDate();
}
};

Date d4(2016, 4, 4);

void fun()
{
cout << "进入 fun( )函数!\n";

static Date d2(2016, 2, 2);	
Date d3(2016, 3, 3);       	

cout << "退出 fun( )函数!\n";

}
int main()
{
cout << "进入 main( )函数!\n";

Date d1(2016, 1, 1);        	

fun();
fun();
cout << "退出 main( )函数!\n";
return 0;

}

3.#include
#include
using namespace std;
int i;
class Teacher
{
char Num[20];
char Name[20];
char Sex;
char Addr[1005];
char Tel[11];
char Email[1005];
char Headship[1005];
char Post[11];
int Salary;
public:
void setNum(char a[])
{
for(i=0;i<20;i++)
Num[i] = a[i];
}
void setName(char b[])
{
strcpy(Name,b);
}
void setSex(char c)
{
Sex = c;
}
void setAddr(char d[])
{
for(i=0;i<20;i++)
Addr[i] = d[i];
}
void setTel(char e[])
{
for(i=0;i<20;i++)
Tel[i] = e[i];
}
void setEmail(char f[])
{
for(i=0;i<20;i++)
Email[i] = f[i];
}
void setHeadship(char g[])
{
for(i=0;i<20;i++)
Headship[i] = g[i];
}
void setPost(char h[])
{
for(i=0;i<20;i++)
Post[i] = h[i];
}
void setSalary(int i)
{
Salary = i;
}
void OutputInfo();
};
void Teacher::OutputInfo()
{cout<<"工号为:"<<Num<<" 姓名为:"<<Name<<" 性别为:"<<Sex<<" 家庭住址为:"<<Addr<<" 电话为:"<<Tel<<" E-mail为:"<<Email<<" 职位为:"<<Headship<<" 职称为:"<<Post<<" 工资为:"<<Salary<<endl;
}
int main()
{
Teacher a;
char name[20];
a.setNum("A001");
a.setName("Wang");
a.setSex('M');
a.setAddr("µØÇò´å");
a.setTel("10086");
a.setEmail("[email protected]");
a.setHeadship("Professor");
a.setPost("Teacher");
a.setSalary(1000000);
a.OutputInfo();
return 0;
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.