我是靠谱客的博主 虚拟烧鹅,这篇文章主要介绍PAT甲级1006(大神代码解析),现在分享给大家,希望可以做个参考。

题目理解:

根据列表罗列的各人进出电脑教室时间,通过比较找出最先进入和最后出去的人。

输入包括记录的条数,以及每个人的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(大神代码解析)内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(127)

评论列表共有 0 条评论

立即
投稿
返回
顶部