1.16-三整数排序

Description
写一个算法,自大到小依次输出顺序读入的三个整数,x,y和z的值
Input
输入x,y和z
Output
输出自大到小的排序

#include<stdio.h>
void swap(int *x,int *y){int t=*x;*x=*y;*y=t;
}
int main(){int x,y,z;scanf("%d%d%d",&x,&y,&z);if(x<y)swap(&x,&y);if(y<z)swap(&y,&z);if(x<y)swap(&x,&y);printf("%d %d %d",x,y,z);return 0;
}

1.17-k阶斐波那契数列

Description
已知k阶斐波那契序列的定义为

试编写求k阶裴波那契序列的第m项值的函数算法,k和m均以值调用的形式在函数参数表中出现。
Input
输入为k和m(m从0开始,f0f_0f0​ 对应m=0)
Output
输出第m项的值

#include<stdio.h>
/*int a[100][100],b[100][100],c[100][100],k,m;
void copy(int (*a)[100],int (*b)[100]);
void operate(int (*a)[100],int (*b)[100]){int i,j,l;int c[100][100];for(i=1;i<=k;++i){for(j=1;j<=k;++j){c[i][j]=0;}}for(i=1;i<=k;++i){for(j=1;j<=k;++j){for(l=1;l<=k;++l){c[i][j]+=a[i][l]*b[l][j];}}}copy(a,c);
}
void init(int (*a)[100]){int i,j;for(i=1;i<=k;++i){for(j=1;j<=k;++j){a[i][j]=0;}}
}
void copy(int (*a)[100],int (*b)[100]){int i,j;for(i=1;i<=k;++i){for(j=1;j<=k;++j){a[i][j]=b[i][j];}}
}
void power(int (*a)[100],int k){int tmp[100][100],i;init(tmp);for(i=1;i<=k;++i){tmp[i][i]=1;}while(k){if(k&1){operate(tmp,a);}operate(a,a);k>>=1;}copy(a,tmp);
}
int main(){scanf("%d%d",&k,&m);if(m<k){printf("0");return 0;}else{if(k==m){printf("1");return 0;}}init(a);a[1][k]=1;init(b);int i;for(i=1;i<=k-1;++i){b[i+1][i]=1;}for(i=1;i<=k;++i){b[i][k]=1;}power(b,m-k+1);operate(a,b);printf("%d",a[1][k]);return 0;
}*/
int a[100000]={},m,i,j,k;
int main(){scanf("%d%d",&k,&m);a[k-1]=1;for(i=k;i<=m;++i){for(j=i-k;j<i;++j){a[i]+=a[j]; }}printf("%d",a[m]);
}

1.18-田径对抗赛

Description

假设有A,B,C,D,E 五个高等院校进行田径对抗赛,各院校的单项成绩均已存入计算机,并构成一张表,表中每一行的形式为

项目名称 - 性别 - 校名 - 成绩

编写算法,处理上述表格,以统计个院校的男、女总分和团体总分,并输出

Input
输入包含多行,每行代表表格中的一行,每个字段以空格分隔

M代表男生,F代表女生

Output
输出每个学校的男,女总分和团体总分,按如下顺序

第一行输出学校A的男生总分

第二行输出学校A的女生总分

第三行输出学校A的团体总分

第四行输出学校B的男生总分

如果某个学校没有男生或女生,则跳过对应的行数(如学校A没有女生,则跳过第二行)

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char p,g,s;
int score,i;
int vis[5];
int S[6][3];
int main(){while(scanf("%c ",&p)!=EOF){scanf("%c %c %d\n",&g,&s,&score);vis[s-'A']=1;if(g=='M'){S[s-'A'][0]+=score;}else S[s-'A'][1]+=score;}for(i=0;i<5;++i){if(S[i][0]+S[i][1]==0)continue;if(S[i][0]!=0){printf("%c M %d\n",i+'A',S[i][0]);}if(S[i][1]!=0){printf("%c F %d\n",i+'A',S[i][1]);}printf("%c %d\n",i+'A',S[i][0]+S[i][1]);}return 0;
}

1.20-求一元多项式的值

Description

编写算法求一元多项式Pn(x0)=∑i=0naix0iP_n(x_0)=\sum_{i=0}^{n}a_ix_0^iPn​(x0​)=∑i=0n​ai​x0i​

的值Pn(x0)P_n(x_0)Pn​(x0​)

Input
输入第一行为x0x_0x0​和n,以空格分隔,n>=0n>=0n>=0
输入第二行为ai(i=0,1,...,n),−1000<=ai<=1000a_i(i=0,1,...,n),−1000<=a_i<=1000ai​(i=0,1,...,n),−1000<=ai​<=1000以空格分隔

Output
输出Pn(x0)P_n(x_0)Pn​(x0​)的值

#include<stdio.h>
int Quick_Power(int x,int k){int ret=1;while(k){if(k&1){ret=ret*x;}x=x*x;k>>=1;}return ret;
}
int x0,n,i,sum=0;
int main(){scanf("%d%d",&x0,&n);for(i=0;i<=n;++i){int a;scanf("%d",&a);sum+=a*Quick_Power(x0,i);}printf("%d",sum);return 0;
}

数据结构习题集作业代码(第一章)相关推荐

  1. 编写高性能 .NET 代码 第一章:工具介绍 -- Performance Counters(性能计数器)

    Performance Counters(性能计数器) 性能计数器是监视应用程序和系统性能的最简单的方法之一.它有几十个类别数百个计数器在,包括一些.net特有的计数器.要访问这些可以通过系统自带的 ...

  2. 第一行代码第一章——你的第一行Android代码

    第一行代码第一章-你的第一行Android代码 知识点目录 1.1 了解全貌--Android王国简介 * 1.1.1 Android系统架构 * 1.1.2 Android已发布的版本 * 1.1. ...

  3. [翻译]编写高性能 .NET 代码 第一章:工具介绍 -- Visual Studio

    Visual Studio vs虽然不是全宇宙唯一的IDE,但它是.net开发人员最常用的开发工具.它自带一个性能分析工具,你可以使用它来做开发,不同的vs版本在工具上会略有差别. VS可以分析CPU ...

  4. [翻译]编写高性能 .NET 代码 第一章:性能测试与工具 -- 平均值 vs 百分比

    平均值 vs 百分比 在考虑要性能测试的目标值时,我们需要考虑用什么统计口径.大多数人都会首选平均值,但在大多数情况下,这个正确的,但你也应该适当的考虑百分数.但你有可用性的要求,作为性能测试的目标里 ...

  5. 《数据结构》 李春葆 第一章-绪论

    <数据结构> 李春葆 第一章-绪论 1 什么是数据结构 1.1 数据结构的定义 1.2 逻辑结构 1.2.1 逻辑结构的表示 1 什么是数据结构 数据元素以及数据元素之间的关系,数据元素= ...

  6. 数据结构c语言版第一章答案,《c语言数据结构》第一章概论自测题答案

    <<c语言数据结构>第一章概论自测题答案>由会员分享,可在线阅读,更多相关<<c语言数据结构>第一章概论自测题答案(4页珍藏版)>请在人人文库网上搜索. ...

  7. 【Java数据结构与算法】第一章 稀疏数组和队列

    第一章 稀疏数组和队列 文章目录 第一章 稀疏数组和队列 一.线性结构和非线性结构 1.线性结构 2.非线性结构 二.稀疏数组 三.队列 1.队列 2.环形队列 一.线性结构和非线性结构 1.线性结构 ...

  8. 《Python数据结构与算法分析》第一章课后习题

    这里写自定义目录标题 Introduction 练习题 Python易错总结: Introduction 最近开始学数据结构,打算用python作为语言,看的书是米勒和戴维的<Python数据结 ...

  9. Android阅读手札:第一行代码(第一章)

    <第一行代码>作为Android开发入门的经典书籍,是我们非常好的阅读选择,初学者可以迅速了解相关知识,老司机也可以温故知新巩固基础.笔者使用该书的第二版,也就是绿色封面的第一章节< ...

最新文章

  1. HTML控制文本框只能输入数字和小数点,并且只能保留小数点后两位 金额转换,阿拉伯数字的金额转换成 面试题
  2. LeetCode-166- Fraction to Recurring Decimal
  3. mysql深入使用教程_深入mysql基础知识的详解
  4. Selenium常用方法及函数、txt参数化
  5. Spring MVC 学习总结(九)——Spring MVC实现RESTful与JSON(Spring MVC为前端提供服务)...
  6. angularjs教程网址
  7. 在没有复杂插件的情况下从Eclipse启动和调试Tomcat
  8. 智能巡检云监控指标的实践
  9. 吴恩达机器学习 5.正则化
  10. Spring整合Junit框架进行单元测试Demo
  11. 'gbk' codec can't encode character解决方法
  12. coreseek mysql.sock_coreseek配置
  13. Proof of Stake - 股权证明 系列1
  14. C# 委托、匿名委托、Lambda表达式详解
  15. XDOJ-直角三角形
  16. 冷色调的亮度越高--越偏暖,暖色调的亮度越高--越偏冷
  17. 在外企必会的英文单词
  18. 项目中的用户鉴权是如何实现的?
  19. 一眼就能看懂的Android自学手册,深度好文
  20. 从新认识redis总结

热门文章

  1. Go语言并发安全与锁
  2. GOTC 2023全球开源技术峰会
  3. html中的input框中的value值到底是什么
  4. 语音控制,让家居听你的话
  5. 河南高考成绩位次查询2021,2021年河南高考状元多少分是谁,河南高考状元名单资料...
  6. 基于Altium Designer进行单片机逻辑系统及模拟电路原理图设计
  7. Ubuntu18.04+ROS melodic 控制UR5机器人(持续更新)
  8. 超详细的ceph节点迁移(mon和mgr)
  9. papers-06-07
  10. linux的命令参考手册,Linux常用命令汇总——可当作简要参考手册 - 程序语言 - 小木虫 - 学术 科研 互动社区...