新人上路,有些不了解的地方想不通,求各路大神教一教。。还在学习中,可能问题比较小白。。。
编写一程序P137.C实现以下功能通过键盘输入两个姓名(约定均为汉字且最多4个汉字),判断并输出二者是否同姓。编程可用素材:printf("请输入姓名1: ")、printf("请输入姓名2: ")、printf("\n“…”与“…”同姓。\n"…、printf("\n“…”与“…”不同姓。\n"…。
程序的运行效果应类似地如图1和图2所示,图1和图2中的红色部分是从键盘输入的内容。
我用的是数组首地址比较是否相等。。
程序代码:
#include <stdio.h> int main(void) { char name1[20]; char name2[20]; printf("请输入姓名1: "); gets(name1); printf("请输入姓名2: "); gets(name2); if (name1[0] == name2[0]) { printf("\n“%s”与“%s”同姓。\n", name1, name2); } else { printf("\n“%s”与“%s”不同姓。\n", name1, name2); } return 0; }
原本想过使用strcmp来比较的,但想到之比较其中一部分,瞬间就有点蒙蔽了。。上面这个程序我自己编译运行能够通过,但现在的问题是学校做题的那个地方通不过。。是这样的,我想问问,具体问题是出现在哪里,学校系统它为什么这么说,因为我自己运行的时候感觉可以的。
失分[50],未实现:输入不是同姓时输出正确
失分[-50],未实现:输入不是同姓时输出不正确
(PS:这个程序写的时候我没有考虑复姓什么的。)