第五周作业

来源:互联网 发布:only淘宝代购是真的吗 编辑:程序博客网 时间:2024/06/05 10:33

例题4.1 数组元素的引用

#include<iostream>using namespace std;int main(){int a[10];int i;for(i=0;i<10;i++)a[i]=i*2+2;for(i=0;i<10;i++){cout<<a[i]<<endl;cout<<endl;}return 0;}
例题4.2

#include <iostream>    using namespace std;        int main()    {        int i,math[40],n;        float aver=0.0;        int unpassedcount=0;        int passedcount=0;        int highscorecount=0;        cout<<"请输入学生人数:";        cin>>n;        cout<<"请输入成绩:"<<endl;        for(i=0;i<n;i++)        {            cin>>math[i];            aver+=math[i];        }        aver/=n;        for(i=0;i<n;i++)        {            if(math[i]<60)                unpassedcount++;            else                passedcount++;            if(math[i]>=90) highscorecount++;        }        cout<<"平均分为:"<<aver<<endl;        cout<<"90分以上的人数为:"<<highscorecount<<endl;        cout<<"及格人数为:"<<passedcount<<endl;        cout<<"不及格人数为:"<<unpassedcount<<endl;            return 0;    }   


例题4.3

#include <iostream>    #include <iomanip>    using namespace std;        int main()    {        int a[10],i,big,small;        cout<<"请输入10个数:\n";        for(i=0;i<10;i++)            cin>>a[i];        cout<<"这些数是:";        for(i=0;i<10;i++)            cout<<setw(4)<<a[i];        cout<<endl;        big=a[0];        for(i=1;i<10;i++)            if(a[i]>big)                big=a[i];        cout<<"最大的数为:"<<big<<endl;      small=a[0];      for(i=1;i<10;i++)          if(a[i]<small)              small=a[i];      cout<<"最小的数为:"<<small<<endl;          return 0;    }  
例题4.4

#include <iostream>    #include <iomanip>    using namespace std;        int main()    {        int a[10];        int i,j,t;        cout<<"请输入10个数字:\n";        for(i=0;i<10;i++)            cin>>a[i];        cout<<"这些数字为:";        for(i=0;i<10;i++)            cout<<setw(4)<<a[i];        cout<<endl;        for(i=0;i<9;i++)            for(j=0;j<9-i;j++)                if(a[j+1]>a[j])                {                    t=a[j+1];                    a[j+1]=a[j];                    a[j]=t;                }        cout<<"从大到小为:";        for(i=0;i<10;i++)            cout<<setw(4)<<a[i];        cout<<endl;            return 0;    }   
例题4.5

#include <iostream>    #include <iomanip>    using namespace std;        int main()    {        int i;        int f[40]={1,1};        for(i=2;i<40;i++)            f[i]=f[i-2]+f[i-1];        for(i=0;i<40;i++)        {            if(i%4==0)                cout<<endl;            cout<<setw(12)<<f[i];        }        cout<<endl;            return 0;    }   

例题4.6

#include <iostream>    #include <iomanip>    using namespace std;        int main()    {        int i,j;        int a[20][5];        for(i=0;i<20;i++)            for(j=0;j<5;j++)                if(i%2==0)                    a[i][j]=i*5+j+1;                else                    a[i][4-j]=i*5+j+1;        for(i=0;i<20;i++)        {            for(j=0;j<5;j++)                cout<<setw(4)<<a[i][j];            cout<<endl;        }            return 0;    }  

例题4.7

#include <iostream>    #include <iomanip>    using namespace std;        int main()    {        int a[4][4],i,j;        cout<<"请输入2行3列二维数组的元素值:"<<endl;        for(i=0;i<4;i++)            for(j=0;j<4;j++)            {                cout<<"a["<<i<<"]["<<j<<"]=";                cin>>a[i][j];            }        cout<<"\n该二维数组为:"<<endl;        for(i=0;i<4;i++)        {            for(j=0;j<4;j++)                cout<<setw(6)<<a[i][j];            cout<<endl;        }        int row=0,column=0,max=a[0][0];        for(i=0;i<4;i++)            for(j=0;j<4;j++)                if(max<a[i][j])                {                    max=a[i][j];                    row=i;                    column=j;                }        cout<<"\n该数组中最大的元素值为:"<<"a["<<row<<"]["<<column<<"]="<<a[row][column]<<endl;        int row1=0,column1=0,min=a[0][0];        for(i=0;i<4;i++)            for(j=0;j<4;j++)                if(min>a[i][j])                {                    min=a[i][j];                    row1=i;                    column1=j;                }        cout<<"\n该数组中最小的元素值为:"<<"a["<<row1<<"]["<<column1<<"]="<<a[row1][column1]<<endl;                return 0;    }  

例题4.8

#include <iostream>    using namespace std;        int main()    {        char str[50];        cout<<"Please input strings:";        cin.get(str,50);        cout<<"The string is:";        cout<<str<<endl;            return 0;    }  

例题4.9

#include <iostream>    #include <cstring>    using namespace std;        int main()    {        char str[100];        cout<<"请输入一个字符串:";        cin.get(str,100);      for(int j=0;j<100;j++)          if(str[j]==0)              cout<<"一共有"<<j<<"个字符!"<<endl;      cout<<"字符串"<<str<<"的反向字符串为:";        for(int i=strlen(str)-1;i>=0;i--)            cout<<str[i];      cout<<endl;                return 0;    }    

例题4.10

#include <iostream>      using namespace std;        int main()    {        char s[]="This is Cprogramming 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

#include <iostream>   #include <cstring>     using namespace std;        int main()    {        char str[50];      cout<<"请输入一组字符串";      cin.get(str,50);      cout<<"该字符串"<<str<<"的长度为:"<<strlen(str)<<endl;                return 0;    }    
例题4.12

#include <iostream>   #include <cstring>     using namespace std;        int main()    {        char str[10];      cout<<"请输入字符串,直到输入hellow后程序结束";      do      {          cin>>str;      }while(strcmp(str,"hellow")!=0);            return 0;    }    

例题4.13

#include <iostream>  using namespace std;    int main()  {      char str[50];      int len=0;      cout<<"请输入一个字符串:";      cin.get(str,50);      while(str[len]!=0)          len++;      cout<<"字符串"<<str<<"的长度为:"<<len<<endl;        return 0;  }

然后下面是书本上的各个编程题

从键盘中输入5个数,从大到小排列

#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 number are:";for(i=0;i<5;i++)cout<<setw(4)<<a[i];cout<<endl;return 0;}


 

从键盘上为数组a[2][3]输入任意整数值

#include <iostream>      #include <iomanip>       using namespace std;            int main()      {         int a[4][4],i,j;          cout<<"请输入2行3列二维数组的元素值:"<<endl;          for(i=0;i<4;i++)              for(j=0;j<4;j++)              {                  cout<<"a["<<i<<"]["<<j<<"]=";                  cin>>a[i][j];              }          cout<<"\n该二维数组为:"<<endl;          for(i=0;i<4;i++)          {              for(j=0;j<4;j++)                  cout<<setw(6)<<a[i][j];              cout<<endl;          }          int row=0,column=0,max=a[0][0];          for(i=0;i<4;i++)             for(j=0;j<4;j++)                  if(max<a[i][j])                  {                      max=a[i][j];                      row=i;                      column=j;                  }          cout<<"\n该数组中最大的元素值为:"<<"a["<<row<<"]["<<column<<"]="<<a[row][column]<<endl;          int row1=0,column1=0,min=a[0][0];          for(i=0;i<4;i++)              for(j=0;j<4;j++)                  if(min>a[i][j])                  {                      min=a[i][j];                      row1=i;                      column1=j;                  }          cout<<"\n该数组中最小的元素值为:"<<"a["<<row1<<"]["<<column1<<"]="<<a[row1][column1]<<endl;                      return 0; }



第三题

#include<iostream>#include<iomanip>using namespace std;int main(){int a[20]={1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368};int i,j=0;for(i=0;i<20;i++){if((a[i]/100)>=1&&(a[i]/100)<10)j++;}cout<<"前20个数中有"<<j<<"个3位数"<<endl;cout<<"第16项数据为"<<a[16]<<endl;return 0;}


第四题

#include<iostream>   #include<cstring>   using namespace std;  int main()  {      int i,j=0,k=0,m=0,n=0,z=0;      char str[20];      cout<<"请输入一行字符:               (30个以内)"<<endl;      cin.get(str,30);      for(i=0;i<strlen(str);i++)      {          if(str[i]>=33&&str[i]<=126)          {              if(str[i]>=48&&str[i]<=57) k++;              else if(str[i]>=65&&str[i]<=90) m++;              else if(str[i]>=97&&str[i]<=122) n++;              else j++;          }          if(str[i]==' ') z++;          }      cout<<"该字符串有"<<k<<"个数字"<<endl;      cout<<"该字符串有"<<m<<"个大写字母"<<endl;      cout<<"该字符串有"<<n<<"个小写字母"<<endl;      cout<<"该字符串有"<<j<<"个符号"<<endl;      cout<<"该字符串有"<<z<<"个空格"<<endl;      return 0;    }  


第五题

#include<iostream>#include<cstring>using namespace std;int main(){char str[50];cout<<"please input a string:";cin.get(str,50);cout<<"字符串"<<str<<"的反向字符串为:";for(int i=strlen(str)-1;i>=0;i--)cout<<str[i];cout<<endl;cout<<"the length of string"<<str<<" is "<<strlen(str)<<endl;return 0;}


 

0 0