概述
题目理解:
根据列表罗列的各人进出电脑教室时间,通过比较找出最先进入和最后出去的人。
输入包括记录的条数,以及每个人的ID、登录、退出时间;ID字符串不超过15个字符,时间输入格式为HH:MM:SS;
输出要求:输出开门的人和关门的人ID,ID之间使用空格隔开;
知识点:
函数 strcmp(s1,s2) 对字符串s1和s2进行比较,返回比较结果--相等返回0,s1>s2时返回正数,s1<s2时返回负数。实际上,字符串的比较是比较字符串中各对字符的ASCII码。首先比较两个串的第一个字符,若不相等,则停止比较并得出大于或小于的结果;如果相等就接着 比较第二个字符然后第三个字符等等。
(很巧妙的地方--因为时间是从左向右比较--时、分、秒)
函数strcpy(s1,s2)将s2中的字符串复制到s1的数组中去。
代码:
#include<cstdio>
#include<cstring>
using namespace std;
char firstper[20];
char lastper[20];
char firsttime[20]="23:59:59";
char lasttime[20]="00:00:00";
int main(){
int n;
scanf("%d",&n);
char id[20],in[20],out[20];
while(n--){
scanf("%s%s%s",id,in,out);
if(strcmp(in,firsttime)<0){
strcpy(firsttime,in);
strcpy(firstper,id);
}
if(strcmp(out,lasttime)>0){
strcpy(lasttime,out);
strcpy(lastper,id);
}
}
printf("%s %s",firstper,lastper);
}
最后
以上就是虚拟烧鹅为你收集整理的PAT甲级1006(大神代码解析)的全部内容,希望文章能够帮你解决PAT甲级1006(大神代码解析)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复