鱼C论坛

 找回密码
 立即注册
查看: 882|回复: 2

C语言编程:找出缺考的是谁

[复制链接]
发表于 2019-3-21 15:45:12 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
已知有一个学生没有参加考试,现在根据签到表和名册表上的2n-1 个名字找出缺考的是谁,名字没有顺序
样例输入:
2
张三
李四
张三
0
样例输出:
李四

其中,第一行正整数n表示总人数,0意味着结束且不需要处理,姓名由大小写的英文字母、常用汉字组成
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-3-21 16:34:50 From FishC Mobile | 显示全部楼层
求大佬解答,急
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-21 18:14:52 | 显示全部楼层
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>

  4. int main(void)
  5. {
  6.         char name[20] , name_list[80][20]                             ;
  7.         int i , k , m                                                 ;

  8.         printf("\n\n")                                                ;
  9.         m = 0                                                         ;
  10.         printf("录入应考人员姓名(输入 0 结束)\n")                   ;
  11.         for(;;) {
  12.                 printf("应考人员姓名:")                              ;
  13.                 scanf("%s" , name)                                    ;
  14.                 if(name[0] != '0') {
  15.                         strcpy(name_list[m ++] , name)                ;
  16.                 } else {
  17.                         break                                         ;
  18.                 }
  19.         }
  20.         if(m > 0) {
  21.                 printf("\n")                                          ;
  22.                 printf("录入参考人员姓名(输入 0 结束)\n")           ;
  23.                 k = m                                                 ;
  24.                 for(;;) {
  25.                         printf("参考人员姓名:")                      ;
  26.                         scanf("%s" , name)                            ;
  27.                         if(name[0] == '0') break                      ;
  28.                         for(i = 0 ; i < m ; i ++) {
  29.                                 if(! strcmp(name_list[i] , name)) {
  30.                                         name_list[i][0] = '\0'        ;
  31.                                         k --                          ;
  32.                                         break                         ;
  33.                                 }
  34.                         }
  35.                 }
  36.                 if (k) {
  37.                         printf("\n")                                  ;
  38.                         printf("缺考人员姓名:\n")                    ;
  39.                         for(i = 0 ; i < m ; i ++) {
  40.                                 if(name_list[i][0]) {
  41.                                         printf("%s\n" , name_list[i]) ;
  42.                                 }
  43.                         }
  44.                 } else {
  45.                         printf("\n")                                  ;
  46.                         printf("全员参考,未发现有人员缺考\n")        ;
  47.                 }
  48.         } else {
  49.                 printf("没有应考人员录入!\n")                        ;
  50.         }
  51. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-14 17:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表