第四章作业

例题4.8

#include <iostream>
using namespace std;
int main()
{
	char str[50];
	cout<<"please input strings:";
	cin.get(str,50);                //默认结束符为Enter键
    cout<<"the string is:";
	cout<<str<<endl;
	return 0;
}


 

例题4.9

#include <iostream>
using namespace std;
int main()
{
	char str[100];
	cout<<"please input strings:";
	cin.get(str,100);                //默认结束符为Enter键
    cout<<"字符串"<<str<<"的反向字符串为:";      //strlen()为求字符串长度函数
	for(int i=strlen(str)-1;i>=0;i--)
		cout<<str[i];
	cout<<str<<endl;
	return 0;
}

	


例题4,。10

#include <iostream>
using namespace std;
int main()
{
	char s[]="this is programming test.";
	int i=0,plen=0,maxlen=0,pseat=0;
	while(s[i]!='\0')
	{
		while(s[i]!=' '&&s[i]!='\0')
		{
			plen++;
			i++; 
		}
		if(plen>maxlen)
		{
			pseat=i-plen;
			maxlen=plen;
		}
		while(s[i]==' ')
			i++;
		plen=0;
	}
	cout<<"最长的单词为:";
	for(i=0;i<maxlen;i++)
		cout<<s[pseat+i];
	cout<<endl;
	return 0;
}
	

例题4.11

{
	char str[50];
	cout<<"please input a string:";
	cin.get(str,50);
		cout<<"the length of string "<<str<<"is"<<strlen(str)<<endl;
	return 0;
}

习题1

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
	int a[5];
	int i,j,t;
	cout<<"please input 5 numbers:"<<endl;
	for(i=0;i<5;i++)                          //给所有数组元素赋初始值
		cin>>a[i];                             //输入数值
	cout<<"the numbers are:";
	for(i=0;i<5;i++)                            //显示所有数组元素
		cout<<setw(4)<<a[i];                     //元素间的宽度
	cout<<endl;
	for(i=0;i<4;i++)                             
		for(j=0;j<4-i;j++)                        
			if(a[j]>a[j+1])                     //比较两个数组
			{t=a[j];a[j]=a[j+1];a[j+1]=t;}     //将数组重新排列,从大到小
			cout<<"the sorted numbers are :";
			for(i=0;i<5;i++)                    //显示所有新数组元素
				cout<<setw(4)<<a[i];              //新数组元素之间的宽度
			cout<<endl;
	return 0;
}

习题2

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
	int i,j,max;
	int a[2][3];
	cout<<"请输入2行三列的二维数组:";
	for(i=0;i<2;i++)                     //给所有元素赋值,能逐一输入元素
		for(j=0;j<3;j++)
		cin>>a[i][j];                     //依次输入数据
		cout<<"所有数组:"<<endl;
    for(i=0;i<2;i++)                     //使所有元素能依次逐一输出
	{
		for(j=0;j<3;j++)
			cout<<"a["<<i<<"]["<<j<<"]="<<a[i][j]<<endl;  //显示数组的下标
		cout<<endl;
	}
	cout<<endl;
	max=a[0][0];
	for(i=0;i<2;i++)
		for(j=0;j<3;j++)
		{
			if(a[i][j]>max)
				max=a[i][j];
		}
     for(i=0;i<2;i++)
		 for(j=0;j<3;j++)
		 {
			 if(max=a[i][j])
				 cout<<"最大项a["<<i<<"]["<<j<<"]="<<a[i][j]<<endl;
			 cout<<endl;
		 }
	return 0;
}


老师,不知道为什么结果不对

请输入2行三列的二维数组:23 12 45 78 87 56
所有数组:
a[0][0]=23
a[0][1]=12
a[0][2]=45

a[1][0]=78
a[1][1]=87
a[1][2]=56


最大项a[0][0]=23

最大项a[0][1]=12

最大项a[0][2]=45

最大项a[1][0]=78

最大项a[1][1]=87

最大项a[1][2]=56

Press any key to continue

为什么会出现全都是最大项

习题3

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
	int i,sanweishucount=0;
	int a[20]={1,1};
	for(i=2;i<20;i++)
     	a[i]=a[i-2]+a[i-1];
     for(i=2;i<20;i++)
	{
		if(i%4==0)
			cout<<endl;
		cout<<setw(12)<<a[i-1];
	}
	for(i=2;i<20;i++)
		if(a[i]>99&&a[i]<1000)
			sanweishucount++;
	cout<<"三位数共有:"<<sanweishucount<<endl;
	cout<<"输出数列中第16项数据"<<a[15]<<endl;
	return 0;
}

           1           2
           3           5           8          13
          21          34          55          89
         144         233         377         610
         987        1597        2584        4181三位数共有:5
输出数列中第16项数据987
Press any key to continue

习题4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值