数据结构第一单元作业

第一题

解题思路:冒泡排序法

#include<stdio.h>
int main()
{
  int n[3];
  for(int i=0;i<3;i++)
    scanf("%d",&n[i]);
  for(int i=0;i<2;i++)
    for(int j=i+1;j<3;j++)
      if(n[j]<n[i])
      {
        int t=n[j];
        n[j]=n[i];
        n[i]=t;
      }
  for(int i=0;i<3;i++)
    printf("%d\t",n[i]);
  return 0;
}

第二题

解题思路:斐波那契数列,第三个数等于第二个数加第一个数,然后令第二个数为第一个数,第三个数为第二个数,接着向下求解。

#include<stdio.h>
intmain()
{
  int l=0,r=1;
  for(int i=0;i<20;i++)
  {
    int t=l;
    l=r;
    r=t+r;
  }
  printf("%d",r);
  return 0;
}

第三题

解题思路:选择排序法(也可以用冒泡)

#include<stdio.h>
void sort(int*p)
{
  for(int i=0;i<9;i++)
    for(int j=0;j<9-i;j++)
      if(*(p+j+1)<*(p+j))
      {
        int t=*(p+j+1);
        *(p+j+1)=*(p+j);
        *(p+j)=t;
      }
}

int main()
{
  int n[10]={3,7,8,1,2,9,0,4,5,6};
  sort(n);
  for(int i=0;i<10;i++)
    printf("%d\t",n[i]);
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容