您的位置:首页 > 其它

习题 6.14 编一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数;若s1=s2, 输出0;若s1<s2,输出一个负数。不要用strcmp函数。两个字符串用gets函数输入。

2017-09-05 20:30 1996 查看

C程序设计(第四版) 谭浩强 习题 6.14 个人设计

习题 6.14 编一个程序,将两个字符串s1和s2比较,若s1 > s2,输出一个正数;若s1 = s2, 输出0;若s1 < s2,输出一个负数。不要用strcmp函数。两个字符串用gets函数输入。输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCII码的差值。

代码块:

方法1:

#include <stdio.h>
#include <string.h>
int main()
{
int i, j, k, m, n;
char s1[10];
char s2[10];
printf("Please enter s1: ");
gets(s1);
m=strlen(s1);
printf("Please enter s2: ");
gets(s2);
n=strlen(s2);
for (i=0, j=0; i<m || j<n; i++, j++){
if (s1[i]==s2[j])
continue;
else
k=s1[i]-s2[j];
}
printf("%d\n", k);
return 0;
}


方法2:

#include <stdio.h>
int main()
{
char s1[10], s2[10], i, v;
printf("Please enter s1: ");
gets(s1);
printf("Please enter s2: ");
gets(s2);
for (i=0; i<10 && s1[i]==s2[i]; i++);
printf("Value=%d\n", i==10 ? v=0 : v=s1[i]-s2[i]);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐