第六周作业

来源:互联网 发布:用友沙盘模拟软件 编辑:程序博客网 时间:2024/05/21 14:53


习题1

#include<iostream>#include<iomanip>using namespace std;int main(){    int i,j,t;int str[5];cout<<"请输入五个数:"<<endl;for(i=0;i<5;i++)cin>>str[i];    cout<<"这五个数的从小到大的顺序是:"<<endl;for(i=0;i<4;i++)for(j=0;j<4-i;j++)if(str[j]>str[j+1]){t=str[j];str[j]=str[j+1];str[j+1]=t;}for(i=0;i<5;i++)cout<<str[i]<<setw(4);    cout<<endl; return 0;}


习题2

#include<iostream>#include<iomanip>using namespace std;int main(){    int a[2][3];int i,j,big;cout<<"请输入二行三列二维数组的元素值:"<<endl;      for(i=0;i<2;i++)    for(j=0;j<3;j++)    {         cout<<"a["<<i<<"]"<<"["<<j<<"]=";        cin>>a[i][j];}cout<<"该二维数组为:";    for(i=0;i<2;i++)    for(j=0;j<3;j++){   if(j%3==0)cout<<endl;cout<<setw(4)<<a[i][j];}cout<<endl;big=a[0][0];    for(i=0;i<2;i++)    for(j=0;j<3;j++)if(a[i][j]>=big)big=a[i][j];    for(i=0;i<2;i++)    for(j=0;j<3;j++)    if(a[i][j]==big)cout<<"该数组中最大元素为:"<<"a["<<i<<"]"<<"["<<j<<"]="<<a[i][j]<<endl;}


习题3

#include<iostream>using namespace std;int function(int n);int main(){    int i,count;count=0;    for(i=1;i<=20;i++){cout<<function(i)<<" ";        cout<<endl;if(function(i)>=100&&function(i)<=999)count++;    } cout<<"Fibonacci数列前20个数中的三位数个数为:"<<count<<endl; cout<<"该数列第16项数据是:"<<function(16)<<endl;     return 0;    }int function(int n){   if(n==1||n==2)return 1;   else return function(n-1)+function(n-2);}


习题4

#include<iostream>#include<iomanip>using namespace std;int main(){char a[100];int i,xiaoxue=0,shuzi=0,daxue=0,kongge=0,qita=0;cout<<"请输入一行字符小于100的文字:";    cin.get(a,100);    for(i=0;i<100;i++)    { if(a[i]>='a'&&a[i]<='z')     xiaoxue++;     else if     (a[i]>='0'&&a[i]<='9')   //因为a被定义为char,,所以应该写成'0' '9'     shuzi++;     else if     (a[i]>='A'&&a[i]<='Z')     daxue++;     else if     (a[i]==' ')     kongge++;     else if (a[i]=='\0') qita=strlen(a)-(shuzi+xiaoxue+daxue+kongge);}     cout<<"数字个数为:"<<shuzi<<endl;     cout<<"小写字母个数为:"<<xiaoxue<<endl;     cout<<"大写字母个数为:"<<daxue<<endl;     cout<<"空格个数为:"<<kongge<<endl;     cout<<"其他字符个数为:"<<qita<<endl;     return 0;}


习题5

#include<iostream>using namespace std;int main(){   char a[100];   int i;   cout<<"输入一字符串:"<<endl;   cin.get(a,100);   cout<<"反向输出每一个字符:"<<endl;   for(i=strlen(a);i>0;i--)   cout<<a[i-1];   cout<<"该字符串长度为:"<<strlen(a)<<endl;        return 0;}


习题6

#include<iostream>  using namespace std;    int main()  {      int i,b,shuzi;shuzi=0;    b=0;      char a[100];      cout<<"输入一个字符串:"<<endl;      cin.get(a,100);      cout<<"删除了所有数字后的字符串为:"<<endl;      for(i=0;i<100;i++)          if(a[i]=='\0')              break;          else if(a[i]>='0'&&a[i]<='9') shuzi++;          else          cout<<a[i];          cout<<"该字符串的长度为:"<<strlen(a)-shuzi<<endl;                return 0;        }  


习题7

题一:#include<iostream>#include<iomanip>using namespace std;int main(){   int i,j,k,p;   p=0;   int a[4][5],b[5][3],ji[4][3];   cout<<"请输入4x5矩阵的元素:";   for(i=0;i<4;i++)   for(j=0;j<5;j++)   cin>>a[i][j];     cout<<"请输入5x3矩阵的元素:";   for(i=0;i<5;i++)   for(j=0;j<3;j++)   cin>>b[i][j];   for(i=0;i<4;i++)   {  for(j=0;j<3;j++)      for(k=0;k<5;k++)  {   p+=a[i][k]*b[k][j];   ji[i][j]=p;  }  p=0;    }   cout<<"两个矩阵的乘积为:"<<endl;   for(i=0;i<4;i++)   {   for(j=0;j<3;j++)       cout<<setw(4)<<ji[i][j];   cout<<endl;   }   return 0;}


题二:#include<iostream>using namespace std;void main(){ int a[32][32],i,j,k,p,n; p=1; while(p==1) {  cout<<"Enter n(n=1~25):";  cin>>n;  if((n!=0)&&(n<=25)&&(n%2!=0))   p=0; } for(i=1;i<=n;i++)  for(j=1;j<=n;j++)   a[i][j]=0; j=n/2+1; a[1][j]=1; for(k=2;k<=n*n;k++) {  i=i-1;  j=j+1;  if((i<1)&&(j>n))  {   i=i+2;   j=j-1;  }  else   {   if(i<1)    i=n;   if(j>n)    j=1;  }  if(a[i][j]==0)   a[i][j]=k;  else   {   i=i+2;   j=j-1;   a[i][j]=k;  } } for(i=1;i<=n;i++) {  for(j=1;j<=n;j++)   cout<<a[i][j]<<" ";  cout<<endl; }


0 0
原创粉丝点击