代码打卡 字符串比较

6-1 字符串比较

分数 10

中等

作者 王跃萍

单位 东北石油大学

函数fun的功能是比较两个字符串,如果s1=s2,则返回值0;如果s1>s2,则返回值1;如果s1<s2,则返回-1。

函数接口定义:

int fun(char a[],char b[]);

其中ab是用户传入的参数。 函数比较两个字符串,如果a=b,则返回值0;如果a>b,则返回值1;如果a<b,则返回-1。

裁判测试程序样例:

#include "stdio.h"
#include "string.h"
int fun(char a[],char b[]);
int  main()
 {int t;
  char s1[40],s2[40];
  gets(s1);  gets(s2);
  t=fun(s1,s2);
  printf("%d\n",t);
  return 0;
 }


/* 请在这里填写答案 */

输入样例:

asd
fg

输出样例:

-1

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

解题思路:

题目要求我们比较两个字符串,如果s1=s2,则返回值0;如果s1>s2,则返回值1;如果s1<s2,则返回-1。在这里,字符串的比较是比较ASCLL码值,若码值全相同,则两字符串相等;若出现首个不同的码值,按码值的大小比较字符串的大小。

如例子中的asd和fg,a的ASCLL码值小于f,所以asd小于fg。

题目中的判裁程序使用了string.h头文件,所以我们可以使用自带的库函数strcmp(),它的返回值与上述题目要求的相符,可以快速的完成此题。

代码实现:

int fun(char a[],char b[]){
    if(strcmp(a,b)>0) return 1;
    else if(strcmp(a,b)<0) return -1;
    else return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值