7、编一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数;若s1=s2,输出0; 若s1<s2,输出一个负数。不要用strcmp函数。两个字符串用gets函数读入。输出的正数或负数 的绝对值应是相比较的两个字符相应的ASCII码的差值。
时间: 2023-12-29 14:16:43 浏览: 112
两个字符串比较大小的小程序
5星 · 资源好评率100%
好的,以下是一个示例程序,可以实现你所需的功能:
```c
#include <stdio.h>
#include <string.h>
int main() {
char s1[100], s2[100];
int i;
printf("请输入字符串s1:");
gets(s1);
printf("请输入字符串s2:");
gets(s2);
for (i = 0; s1[i] != '\0' && s2[i] != '\0'; i++) {
if (s1[i] > s2[i]) {
printf("%d", s1[i] - s2[i]);
return 0;
} else if (s1[i] < s2[i]) {
printf("%d", -1 * (s1[i] - s2[i]));
return 0;
}
}
if (s1[i] == '\0' && s2[i] == '\0') {
printf("0");
} else if (s1[i] == '\0') {
printf("%d", -1 * s2[i]);
} else {
printf("%d", s1[i]);
}
return 0;
}
```
代码中通过循环比较两个字符串的每个字符,如果对应位置的字符不同,则输出它们的ASCII码差值。如果两个字符串相等,则输出0。如果某个字符串的某个字符为空,那么就输出另一个字符串在这个位置上的字符的ASCII码。
阅读全文