比较字符串大小并输出ASCII码差值(终极版)

比较字符串大小并输出ASCII码差值(终极版)

编写一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数,若s1=s2,输出0,若s1<s2,则输出一个负数。输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCII码的差值。例如,“A”与“C”相比,由于“A”<“C”,应输出负数,同时由于‘A’与‘C’的ASCII码差值为2,因此应输出“-2”。同理,“And”和“Aid”比较,根据第2个字符比较结果,‘n’比‘i’大5,因此应输出“5”。

#include <stdio.h>
#include<string.h>
int main()
{
 int i,x1,x2,n1=0,n2=0,p,m1,m2;
 char s1[10],s2[10];
 scanf("%s%s",s1,s2);
 m1=strlen(s1);
 m2=strlen(s2);
 printf("数组s1中输入的字符个数是:%d 个\n",m1);
 printf("数组s2中输入的字符个数是:%d 个\n",m2);
 //*********************************
   //计算数组s1中字符串的ASCII码的和
 printf("数组s1中输入的字符的ASCII码分别是:");
 for(i=0;i<m1;i++)  
 {
  x1=(int)s1[i];printf("%d ",x1);
  n1=n1+x1;
 }
 printf(",  ");
 printf("ASCII码之和为:%d\n",n1);
 //*********************************
   //计算数组s2中字符串的ASCII码的和
 printf("数组s2中输入的字符的ASCII码分别是:");
 for(i=0;i<m2;i++)  
 {
  x2=(int)s2[i];printf("%d ",x2);
  n2=n2+x2;
 }
 printf(",  ");
 printf("ASCII码之和为:%d\n",n2);
 //**********************************
   //比较大小并求出差值
 if(n1>n2) {printf("可得:s1>s2\n");}
    else if(n1<n2){printf("可得:s1<s2\n");}
       else if(n1==n2){printf("可得:s1=s2\n");}
 p=n1-n2;          
 printf("其差值为:%d\n",p); 
   
return 0;
}

在这里插入图片描述
在这里插入图片描述

strlen大法真是妙啊!

感谢观看。

  • 7
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值