您的位置:首页 > 编程语言 > C语言/C++

《c++程序设计》by Y.Daniel Liang

2013-07-25 11:27 148 查看
最近开始重温一本c++的宝书,感觉以前所学的知识还未牢固。《c++程序设计》by Y.Daniel Liang 强烈推荐。是我看过的最好的一本入门级的c++好书。

下面对其中的一些例子和习题,拿出来分享下。纯属本人原创。

1.逆序问题:

(按逆序显示一个整数)函数头如下:

void reverse (int number)

(返回一个整数的逆序) 函数头如下:

int reverse (int number)

void  reverse(int number)
{
while(number!=0)
{
cout<<number%10<<"";
number=number/10;
}
}


int reverse(int number)
{
int a;
a=number%10;
return a;
}


int main()
{
int n;
int b;
cout<<"输入一个数:"<<endl;
cin>>n;
// reverse(n);
while(n!=0)
{
b=reverse(n);
n=n/10;
cout<<b<<"";
}
}


2.输出0--250以内 素数:

/////////////////////
0-250范围内的素数///
////////////////////
int main(){

//cout<<sizeof(int)<<"\t"<<sizeof(long)<<"\t"<<sizeof(float)<<"\t"<<sizeof(char)<<endl;

const int NUNBER_PER_LINE=10;
const int NUMBER=250;
int number=1;
int divisor;
bool isPrime;
//int data[200];
//int i=0;
static int count=0;

while(number++<NUMBER){
isPrime=true;

for(divisor=2;divisor<=number/2;divisor++)//key
{
if(number%divisor==0)
{
isPrime=false;
break;
}
}

if(number==2){isPrime=true;}
//data[i++]=number;
if(isPrime)
{
count++;
cout<<setw(4)<<number<<"";
if(count >=NUNBER_PER_LINE){
cout<<endl;
count=0;
}
}
}
}

void reverse(int number) { while(number!=0) { cout<<number%10<<""; number=number/10; } }




3.猜数字:在0--100的整数范围内,随机猜数字,看看猜中的次数

int main()
{

int n,number;
int cnt=1;
srand(time(0));
number=rand()%100;
cout<<"Please guess what you think it will be(0-100):"<<endl;
cin>>n;
while(n!=number){
cnt++;
if(n>number)
{cout<<"your input is larger "<<endl
<<"please input again"<<endl;
cin>>n;
}
else
{cout<<"your input is smaller"<<endl<<"please input again"<<endl;
cin>>n;
}
}

cout<<"your answer is correct!"<<endl
<<"total guess number is "<<cnt<<endl;

return 0;
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: