c++作业第六章例题部分(第九周)


 

//例6.1
#include <iostream>
using namespace std;

int main()
{

	int a=10;
	int*p;
	p=&a;
	cout<<"a = "<<a<<endl;
	cout<<"p = "<<p<<endl;
	cout<<"&a = "<<&a<<endl;
	cout<<"*p = "<<*p<<endl;
	cout<<"&p = "<<&p<<endl;
	cout<<endl;
	*p=15;
	cout<<"a = "<<a<<endl;
	cout<<"p = "<<p<<endl;
	cout<<"&a = "<<&a<<endl;
	cout<<"*p = "<<*p<<endl;
	cout<<"&p = "<<&p<<endl;

	return 0;
}


 

/*******例6.2---郑天由***************/
#include <iostream>
using namespace std;

int main()
{

	int a,b;
	int *p=&a,*q=&b,*tp;
	cout<<"请输入两个数:";
	cin>>a>>b;
	if(a<b)
	{
		tp=p;p=q;q=tp;
	}
	cout<<"初始的两个数为: "<<a<<"  "<<b<<endl;
	cout<<"从大到小排序后的数为: "<<*p<<"  "<<*q<<endl;

	return 0;
}


 

/********6.3将两个整数按由大到小的顺序输出。****************/
#include <iostream>
using namespace std;

int main()
{

	int a,b,temp;
	int *p=&a,*q=&b;
	cout<<"please input a and b";
	cin>>a>>b;
	if(a<b)
	{
		temp=*p;*p=*q;  *q=temp;
	}
	cout<<"从大到小排序后的数为: "<<*p<<"  "<<*q<<endl;

	return 0;
}


 

//例6.4  指针的关系运算
#include<iostream>
using namespace std;

int main()
{
	int a=10,b=10,*ptr1,*ptr2;
	ptr1=&a;
	ptr2=&b;
	cout<<boolalpha<<(*ptr1==*ptr2)<<endl;
	cout<<boolalpha<<(ptr1==ptr2)<<endl;

	return 0;
}


 

//例6.5
#include<iostream>
#include<iomanip>
using namespace std;

int main()
{
	int a[10];
	for(int i=0;i<10;i++)
		a[i]=2*(i+1);
	for(i=0;i<10;i++)
		cout<<setw(4)<<a[i];
	cout<<endl;


	return 0;
}


 

//例6.6  使用字符指针变量实现将字符串a赋值到字符串b中
#include <iostream>
using namespace std;

int main()
{
	char a[]="hello world",b[20],*p,*q;
	p=a,q=b;
	for(;*p!='\0';p++,q++)
		*q=*p;
	*q='\0';
	cout<<"string1 is: ";
	cout<<a<<endl;
	cout<<"string2 is: ";
	cout<<b<<endl;

	return 0;

}


6.7

/********通过改变指针变量的值输出下面的字符串**********/
#include <iostream>
using namespace std;

int main()
{
	char *p = "student";
	for(;*p!='\0';p++)
		cout<<p<<endl;

	return 0;

}



 

/********6.8  用下标形式引用字符串中的字符**********/
#include <iostream>
using namespace std;

int main()
{
	char *p ="student";
	for(int i=0;p[i]!='\0';i++)
		cout<<p[i];
	cout<<endl;

	return 0;

}


 

/********6.9  利用指针相减的运算,计算字符串的长度**********/
#include <iostream>
using namespace std;

int main()
{
	char s[50];
	char *p;
	cout<<"please input a string: ";
	cin.get(s,50);
	p = s;
	for(; *p!='\0';)
		p++;
	cout<<"the length is :"<<p-s<<endl;  

	return 0;

}


 

/*******例6.10  多级指针举例******/
#include <iostream>
using namespace std;

int main()
{
	int i =5,*p,**pp;
	p=&i;
	pp=&p;
	cout<<&i<<'\t'<<i<<endl;
	cout<<&p<<'\t'<<p<<'\t'<<*p<<endl;
	cout<<&pp<<'\t'<<pp<<'\t'<<*pp<<'\t'<<**pp<<endl;
	return 0;

}


 

/*****例6.11  指针数组举例*******/
#include <iostream>
using namespace std;

int main()
{
	int a[5]={1,2,3,4,5};
	int *p[5]={&a[0],&a[1],&a[2],&a[3],&a[4]};
	for(int i = 0;i<5;i++)
		cout<<*p[i]<<'\t';
	cout<<endl;

	return 0;

}


 

//6.13 用字符串初始化字符指针数组
#include <iostream>
using namespace std;

int main()
{
	char *weekname[]={"sunday","monday","tuesday","wednesday","thursday","friday","saturday"};
	int i;
	while(1)
	{
		cout<<"please input week NO."<<endl;
		cin>>i;
		if(i<0||i>6)
			break;
		cout<<"week NO."<<i<<"-->"<<weekname[i]<<endl;
	}

	return 0;

}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值