c++期末考
1.
谁不及格?
Problem:A
Time Limit:1000ms
Memory Limit:65535K
Description
聪聪的班主任王老师最近有点忙,可是他又是一位非常细心的老师,每次考试成绩都有专门的东西来记录,学期结束的时候给每位学生算了加权之后,他都要“关心关心”成绩不好的学生,并在假期给他们补补功课。什么是成绩不好呢?在王老师眼里,成绩不好当然就是加权成绩不及格咯!如今王老师这么忙,正好看你成天写程序闲着没事儿,于是他想让聪明的你来帮他写个程序,把那些不及格的同学的名单打印给他。
Input
输入包含多组数据,每组输入一个数n(1<=n<=10),然后接下来输入n个同学的信息,每个同学的信息分3行,第一行姓名name(姓名长度不超过20个字母),第二行学号x,长度为10(例:2015215098),第三行学生的平均加权成绩。
Output
每组数据第一行输出一个数k,表示不及格学生的个数,然后接下来输出3*k行不及格学生信息,第一个k行输出不及格学生姓名(按输入顺序),第二个k行输出学生学号(按输入顺序),第三个k行输出学生成绩(按输入顺序)(保留2位小数)。若是没有同学不及格,那么输出“They are Great!!”。
Sample Input
zhu dan
79.99
wang meng
83.78
tiancai
59.08
Sample Output
They are Great!!
tiancai
59.08
输出注意一下……
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct stu{
char name[30];
char xh[20];
float ss;
}st[11]; int main()
{
int n,i,j,s[11],m;
while (scanf("%d",&n)!=EOF)
{
m=0;
getchar();
for (i=1;i<=n;i++)
{
gets(st[i].name);
scanf("%s%f",st[i].xh,&st[i].ss);
getchar();
if (st[i].ss<60)
{
s[++m]=i;
}
}
if (m==0)
{
printf("They are Great!!\n");
continue;
}
printf("%d\n",m);
for (i=1;i<=m;i++)
{
printf("%s\n",st[s[i]].name);
}
for (i=1;i<=m;i++)
{
printf("%s\n",st[s[i]].xh);
}
for (i=1;i<=m;i++)
{
printf("%.2f\n",st[s[i]].ss);
}
}
return 0;
}
校庆的活动
Problem:B
Time Limit:1000ms
Memory Limit:65536K
Description
在林大60年校庆时要设计1个平面,平面的设计要会几何知识.给出一些整数对,它们表示一些平面上的坐标点,给定一个点,求所有那些点到该点最短距离的点。结构为:第一个整数对为所给定的点,后面的整数对为所有其他的点。
Input
输入有多组,每组第1行是给定的点的坐标x和y,(0 <= x,y <= 100),第2行是n,接下来有n行(1 <= n <= 50),每行2个数,代表其它点的坐标。
Output
输出这n行坐标中离定点距离最近的点的坐标,输出到屏幕上并换行。
Sample Input
9 2
1 0
1 1
0 0
1 2
2 1
Sample Output
2 1
这个题好多人没用结构体……倒是能写,结构体的专题怎么能不练习结构体呢
#include<cstdio>
#include<cstring>
#include<cmath>
#include<iostream>
using namespace std;
typedef struct lhy{char s[100];char s1[20];float b;} L;
int main()
{
int i,j,k,p,t;
float x,y,d=99999999,x1,y1;
L l[100];
while(cin>>p>>t)
{ cin>>k;
for(i=1;i<=k;i++)
{
cin>>x>>y;
if(d>sqrt((p-x)*(p-x)+(y-t)*(y-t)))
d=sqrt((p-x)*(p-x)+(y-t)*(y-t)),x1=x,y1=y;
}
printf("%.0f %.0f\n",x1,y1);
}
return 0;
}
3
第4题
Problem:C
Time Limit:1000ms
Memory Limit:65535K
Description
复数运算
同学们在C语言中已经利用整数、实数和字符类型等标准数据类型编写一些程序了。那你们还记得在中学阶段学习过一种数据——复数吗?C语言中没有把这种数据设定为标准数据,老师也只在FORTRAN语言中见过。现在请你利用C语言定义复数这种类型的数据,并完成复数的加、减运算,提示复数类型的定义用结构体实现。题目也做了简单处理,只考虑结果都还是复数的情况,不必考虑虚部为零了。
Input
输入数据为多组,每组两行,每行两个实数(double),分别代表复数的实部和虚部。
Output
对于每组数据,输出这两个复数的和、差,实部虚部都分别保留两位小数。
提示:1)如果两个复数分别为a+bi和c+di,那么它们的和是:(a+c)+(b+d)i;它们的差是:(a-c)+(b-d)i;
2)除主函数外,分别编写三个函数,用于求两个复数的和,差、和结果的输出。例如,如果复数类型结构体定义为 CX,则求和函数为 CX cadd(CX x1,CX x2);,求差函数为 CX cminu(CX x1,CX x2);,输出结果函数为 void cprint(CX x);
Sample Input
1.2 2.3
3.2 3.4
3.4 2.2
-7.5 -1.1
Sample Output
4.40+5.70i
-2.00-1.10i
-4.10+1.10i
10.90+3.30i
好像是c语言期末考试的考试题
#include <stdio.h>
#include <stdlib.h> struct comp
{
double real;
double imag;
}; int main()
{
struct comp data[2];
struct comp pluss;
struct comp minuss;
while(scanf("%lf%lf%lf%lf",&data[0].real,&data[0].imag,&data[1].real,&data[1].imag)!=EOF)
{
pluss.real=data[0].real+data[1].real;
pluss.imag=data[0].imag+data[1].imag;
if(pluss.imag<0)
printf("%.2lf%.2lfi\n",pluss.real,pluss.imag);
else
printf("%.2lf+%.2lfi\n",pluss.real,pluss.imag);
minuss.real=data[0].real-data[1].real;
minuss.imag=data[0].imag-data[1].imag;
if(minuss.imag<0)
printf("%.2lf%.2lfi\n",minuss.real,minuss.imag);
else
printf("%.2lf+%.2lfi\n",minuss.real,minuss.imag);
}
return 0;
}
4
优秀学生
Problem:D
Time Limit:1000ms
Memory Limit:65535K
Description
读入学生的信息(最多不超过100个):学号(不超过八位)、姓名(不超过20个字符)、C语言成绩(用整数表示)。统计优秀学生的信息(成绩在90分以上,包括90分)及个数。(要求用结构体实现)
Input
输入数据有多组,每组为n个学生的信息;
Output
输出数据优秀学生的信息及个数。
Sample Input
2015001
ZhangSan
2015002
LiMing
2015003
WangHong
2015004
ZhangXiao
2015005
WangFang
2015001
ZhangSan
2015002
LiMing
2015003
WangHong
Sample Output
2015001 ZhangSan 90
2015004 ZhangXiao 95
2015005 WangFang 100
Hint
按要求做答,否则无分!
comment
题目难度系数 :3分 难度适中;
本题目考核知识点:
1.结构体定义。
2.结构体数据的输入和输出。
3.结构体数组的使用。
这个题是c语言补考的题
#include <stdio.h>
#include <stdlib.h>
#include <string.h> struct student
{
int number;
char name[20];
int score;
} student;
int main()
{ struct student stu[100];
int n,i,sum;
while(scanf("%d",&n)!=-1)
{
sum=0;
getchar();
for(i=0;i<n;i++)
{
scanf("%d%s%d",&stu[i].number,&stu[i].name,&stu[i].score);
if(n>1) getchar();
}
for(i=0;i<n;i++)
if(stu[i].score>=90)
{
sum++;
printf("%d %s %d\n",stu[i].number,stu[i].name,stu[i].score);
}
printf("%d\n",sum); } return 0;
}
两圆的距离
Problem:E
Time Limit:1000ms
Memory Limit:65535K
Description
有很多个圆,圆心的坐标都在X轴上,这些圆都不相交,请问最右边的圆距离y轴有多远?
计算公式为:最右边的圆的圆心到(0,0)点的距离减去这个圆的半径。
Input
输入数据有多组,每组第1行为N代表圆的个数(2<=N<=10),然后有N行数据,每行2个实数x和r,分别代表圆的圆心横坐标和半径(0.0<x,r<50.0,因为圆心的纵坐标都为0,所以不给出纵坐标的值)。
本题用结构体来实现
struct yuan
{
double x;//圆心的X轴坐标
double r;//半径
} data[11];
Output
对于每组数据在一行内输出最右边的圆到Y轴的距离,结果保留2位小数。
Sample Input
0 1
2 0.5
4 1
Sample Output
3.00
这个也是补考题
#include <stdio.h>
#include <stdlib.h>
struct yuan
{
double x;
double r;
}data[11];
int main()
{
int n,i,t;
double max;
while(scanf("%d",&n)!=-1)
{
max=-9999.00;t=0;
for(i=0;i<n;i++)
{
scanf("%lf%lf",&data[i].x,&data[i].r);
if (max<data[i].x) {max=data[i].x;t=i;} }
printf("%.2lf\n",data[t].x-data[t].r); } return 0;
}
p.s.应该养成良好的习惯,结构体的定义在main函数外面,每次使用清空内容……
c++期末考的更多相关文章
- Leave It Behind and Carry On ---- 高一下期末考反思 [补档]
背景 这个学期的前\(\frac{3}{4}\), 我都是在停课集训中度过的, 先是GDKOI, 再是北京集训, 最后是GDOI, 结果GDOI还没进day3就滚粗了. 学校的内容是考完GDOI后回学 ...
- (C语言)学生成绩排序-期末考倒数第二题结构体数组排序
假设学生的基本信息包括学号.姓名.三门课程成绩以及个人平均成绩,定义一个能够表示学生信息的结构类型.输入n(n<50)个学生的成绩信息,按照学生的个人平均分从高到低输出他们的信息.如果平均分相同 ...
- 【Mood】八上期末考
Final exam Day -30 平姐在班会上突然就说了一句,离期末考只有一个月了. 刚从体育节的气氛中脱离出来的我想了想,好像还真的是诶. 又努力地去想了想,好像不太慌张呢. Final ex ...
- 闭关修炼屯题中,期末考完A
FJUTOJ 1279 #include <cstdio> #include <iostream> #include <algorithm> #include &l ...
- PHP求职宝典系列——PHP Web 编程篇
PHP Web 编程篇 form表单 1.简述 POST 和 GET 传输的最大容量分别是多少? GET 方法提交的表单数据被附加到 URL 上,并作为URL 的一部分发送到服务器端. URL 的长度 ...
- 精选30道Java笔试题解答
转自:http://www.cnblogs.com/lanxuezaipiao/p/3371224.html 都 是一些非常非常基础的题,是我最近参加各大IT公司笔试后靠记忆记下来的,经过整理献给与我 ...
- 记lrd的高二上学期第五次调研考试
河北某某中学的调研考试其实是很好玩的经历呢.可惜没有太多机会了. 背景: NOIP2016回来之后没有好好学文化课-.自习能翘就翘了,衡中特产学案自助没有好好写(说来我好像从来没被老师查到过,上课写学 ...
- 最终版的Web(Python实现)
天啦,要考试了,要期末考试了,今天把最终版的Python搭建Web代码先写这里记下了.详细的过程先不写了. 这次是在前面的基础上重写 HTTPServer 与 BaseHTTPRequestHandl ...
- 再见,OI
你好,NOIP 2015年9月1日 正式成为了福建省莆田一中的一名高一成员 后来学校搞了选修 大家都很激动 因为自己的兴趣和特长能够得到发挥了(或者说能逃课或者看好多电影) 发现选修提供的选项中有好几 ...
随机推荐
- java的八大排序
public class Sort2 { public static void main(String[] args) { Sort2 sort = new Sort2(); System.out.p ...
- 未来Linux系统将是运维行业必备的技能之一
关于linux,这个并不是每个人都能用或者需要用的,因为平时有很多人用电脑只是为了上上网,聊聊天,打打游戏,这个是完全不需要用linux的.关于linux,是不能用正常的大家所熟知的window来认知 ...
- Mysql高可用
一.二进制日志 二进制日志,记录所有对库的修改,如update.修改表结构等等 需要开启二进制日志的原因: 1.主从复制都是通过二进制日志进行.主库写二进制日志,传输到从库,从库replay二进制日志 ...
- [SpringMVC-值传递] 初始SpringMVC--SpringMVC中的值传递
把页面中输入的值传递到后台以及后台向前台传递,有以下几种方式 这里以登录为例子,实现打印前端页面的值 1,新建一个控制器,根据不同的请求地址实现不同的请求方式 LoginController.java ...
- git 实现提交远程分支步骤
git clone git branch [分支名] 创建分支 git branch 查看本地所有分支 git checkout [分支名称] 切换分支 ---写代码--- git status (查 ...
- 使用Intellij Idea创建简单Maven项目(转)
我是学Java Web的,基本靠自学,在网上收集了各种视频资料,逐一的看,代码逐一的敲.学习了这么久之前一直未成想过要把自己的学习路程记录下来,在网上也看到过很多人把自己的学习历程以及遇到的问题写在了 ...
- springboot默认创建的bean是单实还是多例
转:https://blog.csdn.net/q1512451239/article/details/53122687 springboot默认创建的bean是单实还是多例 曾经面试的时候有面试官问 ...
- js第一天学习内容
var a=12: var t=(- -a)-(a- -)+(a++)-(a++) console.log(a) t=-1: a=12: (- -a)=11-(a=11- -)=10+(a=10++) ...
- 在Ubuntu上搭建IntelliJ IDEA license server服务器
1.下载激活文件 2.ubuntu需要使用 IntelliJIDEALicenseServer_linux_amd64 ,把该文件传到服务器的某个目录,我是放在了/jideal 下 3.进入上面的目录 ...
- spring mvc EL ModelAndView的 Model 值 在jsp中不显示
问题:spring mvc开发过程中, 经常会给model addAttribute, 然后通过EL在jsp中显示,比如 ${msg}, 但是有时候会出现jsp最后显示的还是${msg},而不是msg ...