谭浩强版C++课本实例 第一章 c++的初步认识

本文提供了多个C++编程示例,包括基本输出、求和、查找最大值、使用类、交换变量值等常见操作,适合初学者理解并实践C++的基本语法和特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//1.1 output"This is aC++ program"

#include <iostream>

using namespace std;

int main()

{

cout<<"This is a C++ program.\n";

return 0;

}

 

//1.2 ab两数之和

#include <iostream>

using namespace std;

int main()

{

int a,b,sum;

cin>>a>>b;

sum=a+b;

cout<<"a+b="<<sum<<endl;

return 0;

}

 

//1.3 输入xy,求出两个数中的最大者

#include <isotream>

using namespace std;

int main()

{

int max(int x,int y);

int a,b,c;

cin>>a>>b;

c=max(a,b);

cout<<"max="<<c<<endl;

return 0;

}

int max(int x,int y)

{

int z;

if(x>y) z=x;

else z=y;

return (z);

}

 

//1.4 包含类的C++程序

#include <iostream>

using namespace std;

class Student

{

private:

int num;

int score;

public:

void setdata()

{

cin>>num;

cin>>score;

}

void display()

{

cout<<"num="<<num<<endl;

cout<<"score="<<score<<endl;

}

};

Student stud1,stud2;

int main()

{

stud1.setdata();

stud2.setdata();

stud1.display();

stud2.display();

return 0;

}

 

//1.5 cincout一起使用

#include <iostream>

using namespace std;

{

cout<<"please enter your name and age:"<<endl;

char name[10];

int age;

cin>>name;

cin>>age;

cout<<"your name is "<<name<<endl;

cout<<"your age is "<<age<<endl;

return 0;

}

 

//1.63个数中最大的数

#include <iostream>

using namespace std;

int max(int a,int b,int c)

{

if(b>a) a=b;

if(c>a) a=c;

return a;

}

float max(float a,float b,float c)

{

if(b>a) a=b;

if(c>a) a=c;

return a;

}

long max(long a,long b,long c)

{

if(b>a) a=b;

if(c>a) a=c;

return a;

}

int main()

{

int a,b,c;

float d,e,f;

long g,h,i;

cin>>a>>b>>c;

cin>>d>>e>>f;

cin>>g>>h>>i;

int m;

m=max(a,b,c);

cout<<"max_i="<<m<<endl;

 

float n;

n=max(d,e,f);

cout<<"max_f="<<n<<endl;

 

long int p;

p=max(g,h,i);

cout<<"max_l="<<p<<endl;

return 0;

}

 

//1.7 用一个函数求2个或3个整数中最大数

#include <iostream>

using namespace std;

int max(int a,int b,int c)

{

if(b>a) a=b;

if(c>a) a=c;

return a;

}

int max(int a,int b)

{

if(a>b) return a;

else return b;

}

int main()

{

int a=7,b=-4,c=9;

cout<<max(a,b,c)<<endl;

cout<<max(a,c)<<endl;

return 0;

}

 

//1.8 1.6中程序改为通过函数模板来实现

#include <iostream>

using namespace std;

template <typename T>

T max(T a,T b,T c)

{

if(b>a) a=b;

if(c>a) a=c;

return a;

}

int main()

{

int i1=8,i2=5,i3=6,i;

double d1=56.9,d2=90763,d3=43.1,d;

long g1=67843,g2=-456,g3=78123,g;

i=max(i1,i2,i3);

d=max(d1,d2,d3);

g=max(g1,g2,g3);

cout<<"i_max="<<i<<endl;

cout<<"f_max="<<f<<endl;

cout<<"g_max="<<g<<endl;

return 0;

}

 

//1.9 了解引用和变量的关系

#include <iostream>

using namespace std;

int main()

{

int a=10;

int &b=a;//声明ba的引用

a=a*a;

cout<<a<<" "<<b<<endl;

b=b/5;

cout<<a<<" "<<b<<endl;

return 0;

}

 

//1.10无法实现两个的值互换的程序

#include <iostream>

using namespace std;

void swap(int a,int b)

{

int temp;

temp=a;

a=b;

b=temp;

}

int main()

{

int i=3,j=5;

swap(i,j);

cout<<"i="<<i<<" "<<"j="<<j<<endl;

return 0;

}

 

//1.11 使用指针变量作参数,实现两个变量的值互换

#include <iostream>

using namespace std;

void swap(int *p1,int *p2)

{

int temp;

temp=*p1;

*p1=*p2;

*p2=temp;

}

int main()

{

 

int i=3,j=5;

swap(&i,&j);

cout<<"i="<<i<<","<<"j="<<j<<endl;

return 0;

}

//1.12 利用“引用参数”实现两个变量的值互换

#include <iostream>

using namespace std;

void swap(int &a,int &b)

{

int temp;

temp=a;

a=b;

b=temp;

}

int main()

{

int i=3,j=5;

swap(i,j);

cout<<"i="<<i<<" "<<"j="<<j<<endl;

return 0;

}

 

//1.13 将函数指定为内置函数

#include <iostream>

using namespace std;

inline int  max(int a,int b,int c)

{

if(b>a) a=b;

if(c>a) a=c;

return a;

}

int main()

{

int i=7,j=10,k=25,m;

m=max(i,j,k);

cout<<"max="<<m<<endl;

return 0;

}

//1.14用带参宏定义实现求平方值

#include <iostream>

using namespace std;

#define power(x) x*x

int main()

{

cout<<power(2)<<endl;

cout<<power(1+1)<<endl;

return 0;

}

 

//1.15 用内置函数实现求平方值

#include <iostream>

using namespace std;

inline int power(int x)

return x*x;

int main()

{

cout<<power(2)<<endl;

cout<<power(1+1)<<endl;

return 0;

}

 

//1.16 局部变量和全局变量同名

#include <iostream>

using namespace std;

float a=13.5;

int main()

{

int a=5;

cout<<a<<endl;

return 0;

}

//1.17 输入3个字符串,要求字母由小到大顺序输出

#include <iostream>

#include <string>

using namespace std;

int main()

{

string string1,string2,string3,temp;

cout<<"please input three strings:"<<endl;

cin>>string1>>string2>>string3;

if(srting2>string3) 

{

temp=string2;

string2=string3;

string3=temp;

}

if(string1<=string2)

cout<<string1<<" "<<"string2<<" "<<string3<<endl;

else if(string1<=string3)

cout<<string2<<" "<<string1<<" "<<string3<<endl;

else cout<<string2<<" "<<string3<<" "<<string1<<endl;

return 0;

}

//1.18 开辟空间义存放一个结构体变量

#include <iostream>

#include <string.h>

using namespace std;

struct Student

{

char name[10];

int num;

char sex;

};

int main()

{

Student *p;

p=new Student;

strcpy(p->name,"Wang Xiaopeng");

p->num=10123;

p->sex='M';

cout<<p->name<<p->num<<p->sex<<endl;

delete p;

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值