好文档 - 专业文书写作范文服务资料分享网站

c++经典代码大全

天下 分享 时间: 加入收藏 我要投稿 点赞

cout<

cout<

cout<

//显示student类型数组元素及其大小 size=sizeof(st_arr) / sizeof(student); cout<<\ cout<

cout<

#include

//add()函数的定义,其有返回值 double add(double x,double y) {

double z; z=x+y;

cout<

main() {

double a=0.5,b=1.0;

//以不同参数形式调用函数add()

cout<<\ cout<<\

cout<<\ cout<<\

//以表达式方式调用函数add() double c=2*add(a,b); cout<<\

cout<<\

//以语句式方式调用函数add() add(2*a,b);

cout<<\

//用其他类型参数调用函数add() int n=1,m=2;

cout<<\}

#include

//定义符号函数sgn(),其返回值为int类型 int sgn(double x) {

if (x>0) return(1); //返回出口1 if (x<0) return(-1); //返回出口2 return(0); //返回出口3 }

//main()函数定义 main() {

double x; int i;

for (i=0;i<=2;i++) { cout<<\ cin>>x;

cout<<\ } }

#include

//函数原型语句可以在这里 //定义main()函数 main() {

//max()函数原型声明语句 float max(float,float);

//变量声明语句 float a,b,Max;

//输入参数并计算 cout<<\ cin>>a; cout<<\ cin>>b;

Max=max(a,b); //调用max()函数

cout<<\}

//定义max()函数

float max(float x,float y) //max()返回值类型为浮点型{

float z;

z=(x>y)?x:y; return(z); }

#include //定义f()函数

f(int x,int y) //f()的参数以值方式传递 {

++x; --y;

cout<<\}

main() { int a,b;

//设置实际参数的值 a=b=10;

//以变量为参数调用f()函数 f(a,b);

//验证实际参数的值

cout<<\

//以表达式参数形式调用f()函数 f(2*a,a+b); }

#include

//定义公共结构类型

11

struct student { int num;

char name[10]; float maths; float physics; float chemistry; double total; };

//定义结构输入函数

input_Rec(struct student *p) //参数为student类型的结构指针 swap_Rec(&a[i],&a[j]); //交换两个结构变量中的数据

cout<<\ //输出一分界线

//输出排序后的结构数组

cout<<\ for (p1=a;p1<=a+2;p1++) put_Rec(p1); }

#include //定义结构 变量 {

cin>>p->num; cin>>p->name; cin>>p->maths; cin>>p->physics; cin>>p->chemistry; }

//定义结构数据交换函数

swap_Rec(struct student *p1,struct student *p2) {

struct student x;

//交换两个记录的数据 x=*p1; *p1=*p2; *p2=x; }

//输出结构的值

put_Rec(struct student *p) {

cout<num<<'\\t'; cout<name<<'\\t'; cout<maths<<'\\t'; cout<physics<<'\\t'; cout<chemistry<<'\\t'; cout<total<

//定义main()函数 main() {

int i,j;

// 声明结构指针变量和结构数组 struct student *p1,a[3];

//输入3个学生的数据并计算总成绩

cout<<\ for (p1=a;p1<=a+2;p1++) { input_Rec(p1);

p1->total=p1->maths+p1->physics+p1->chemistry; }

//对3个学生的数据排序 for (i=0;i<=2;i++)

for (j=i+1;j<=2;j++)

if (a[i].total

struct student {

char name[10]; float grade; };

//交换student类型的数据

void swap(student &x,student &y) //swap的参数为引用传递方式 {

student temp; temp=x; x=y; y=temp; }

//返回student类型的引用,求优者

student& max(student &x,student &y) //swap的参数为引用传递方式 {

return (x.grade>y.grade?x:y); }

//显示student类型的数据

void show(student &x) //show的参数为引用传递方式 {

cout<

void main() {

student a={\

//显示a和b的数据 cout<<\ show(a); cout<<\ show(b);

cout<<\

//交换a和b的数据,并显示 swap(a,b); cout<<\show(a);

cout<<\show(b);

cout<<\

//计算和显示成绩高者 student t=max(a,b); cout<<\

12

show(t); }

#include //参数带有默认值的函数 disp(int x=1,int y=1,int z=1) {

cout<<\参数1: \ cout<<\参数2: \ cout<<\参数3: \ cout<<\}

//main()函数中测试参数带有默认值的函数disp() void main() {

disp(); disp(10); disp(10,20); disp(10,20,30); int a=1,b=2,c=3; disp(a,b,c); }

#include //计算字符串长度的函数 int str_len(const char *string) {

//char *temp=string; 编译报错! //*string='x'; 编译报错! int i=0;

while (*(string+i)!=NULL) i++; return i; }

//main()函数中测试str_len() void main() {

char a[]=\

cout<

cout<

cout<<\is a test.\test.\}

#include

void disp(void); //这个函数声明语句不能少

//定义main()函数的参数和返回值类型是void类型 void main(void) {

//调用void类型函数 disp(); }

//以下定义disp()函数 void disp(void) {

cout<<\}

#include //函数原型语句 int abs(int x);

long abs(long x); float abs(float x);

//main()函数的定义 void main(void) {

//声明变量

int i1=32767,i2=-32767; long l1=456789,l2=-456789; float x1=1.1234,x2=-1.1234;

//直接在cout输出中调用函数

cout<

//定义int型的abs()函数 int abs(int x) { if (x<0)

return(-x); else

return(x); }

//定义long型的abs()函数 long abs(long x) { if (x<0)

return(-x); else

return(x); }

//定义float型 abs函数 float abs(float x) { if (x<0.0) return(-x); else

return(x); }

#include is a

//max()为内联函数

inline int max(int x,int y) //注意inline关键字 {

return x>y?x:y; }

//定义main()函数 main() {

int a=3,b=5,c; c=max(a,b);

cout<<\

cout<<\}

#include main() {

//函数原型声明 int fact(int x); 13

int n,sn;

//依次从键盘上输入3个正整型数据计算它们的阶乘 for (int i=1;i<=3;i++) {

cout<>n; sn=fact(n);

cout<

//以下是采用递归方法定义的fact()函数 int fact(int x) {

if (x==0) return(1);

return(x*fact(x-1)); //此处又调用了它自身 }

#include //带参数的main()函数

int main(int argc,char *argv[]) {

int i;

for(i=0;i

cout<

#include

//用函数原型声明要使用的函数 void show_array1(int*,int); void show_array2(int a[],int); void sort(int*,int); main() {

//声明数组并初始化 int a[]={2,4,6,1,3,5};

int b[3][3]={{2,4,6},{1,3,5},{0,1,2}};

//显示数组的值

cout<<\ show_array1(a,6);

show_array1(&b[0][0],3*3);

//用sort1排序并显示

cout<<\ sort(a,6);

show_array1(a,6); sort(&b[0][0],3*3);

show_array1(&b[0][0],9);

//显示数组的值

cout<<\ show_array2(a,6);

show_array2(&b[0][0],3*3); }

//显示数组,用指针当参数

void show_array1(int *p,int size) { for(int i=0;i

cout<

//显示数组,用数组当参数

void show_array2(int a[],int size) { for(int i=0;i

//对数组按从大到小顺序排序 void sort(int *p,int size) { int t;

for (int i=0;i

for (int j=i+1;j

t=*(p+i);

*(p+i)=*(p+j); *(p+j)=t; } }

#include //定义结构 struct student {

char name[10]; float grade; };

//更改student数据的grade成员,参数形式为引用void change(student &x,float grade) {

x.grade=grade; }

//更改student数据的grade成员,参数形式为指针void change1(student *p,float grade) {

p->grade=grade; }

//更改student类型的数据,普通参数形式 void change2(student x,float grade) {

x.grade=grade; }

//显示student类型的数据,参数形式为引用 void show(student &x) {

cout<

//在main()函数中,测试对结构的处理函数 void main() {

student a={\

//显示a的数据 show(a);

14

//用change修改分数,并显示 cout<<\ change(a,360); show(a);

//用change1修改分数,并显示 cout<<\ change1(&a,375); show(a);

//用change2修改分数,并显示 cout<<\ change2(a,380.5); show(a); }

#include

//定义函数计算数组的和和平均值

void calculate(int a[],int size,int& sum,float& average) {

sum=0;

for (int i=0;i

average=sum/size; }

//定义显示数组的函数 void put_arr(int a[],int size) {

for(int i=0;i

main() {

//声明数组并初始化 int asize,bsize;

int a[]={2,4,6,1,3,5};

int b[]={1,3,5,7,9,11,13,15};

//显示数组的值

asize=sizeof(a)/sizeof(int); cout<<\ put_arr(a,asize);

bsize=sizeof(b)/sizeof(int); cout<<\ put_arr(b,bsize);

//计算数组的和和平均值 float a_ave,b_ave; int a_sum,b_sum; cout<<\ calculate(a,asize,a_sum,a_ave); cout<<\

cout<<\ cout<<\ calculate(b,bsize,b_sum,b_ave); cout<<\

cout<<\

}

#include

//参数为函数指针的函数

int get_result(int a, int b, int (*sub)(int,int)) {

int r;

r=sub(a,b); return r; }

//计算最大值

int max(int a, int b) {

cout<<\ return((a > b) ? a: b); }

//计算最小值

int min(int a, int b) {

cout<<\ return((a < b) ? a: b); }

//求和

int sum(int a, int b) {

cout<<\ return(a+b); }

//测试指向函数的指针 void main(void) {

int a,b,result;

//测试3次

for (int i=1;i<=3;i++) {

cout<<\ cin>>a>>b; cout<

result =get_result(a, b, &max);

cout<<\of \and \\

result = get_result(a, b, &min);

cout<<\of \and \\

result = get_result(a, b, &sum);

cout<<\of \and \\ } }

#include #include #define size 3

15

is

is

is

2014w2qlws175lm25rnh
领取福利

微信扫码领取福利

微信扫码分享