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

来源:互联网 发布:iis php mysql 编辑:程序博客网 时间:2024/04/30 14:24

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;}
阅读全文
0 0
原创粉丝点击