C语言编写程序实现,对键盘输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。例如,输入的两个字符串分别为“abcdefg”和“abceef”,则输出为-1。
时间: 2024-02-17 12:01:10 浏览: 25
好的,我来为您提供实现这个功能的代码。
```c
#include <stdio.h>
int main() {
char str1[100], str2[100];
int i, diff = 0;
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
for (i = 0; str1[i] && str2[i]; i++) {
if (str1[i] != str2[i]) {
diff = str1[i] - str2[i];
break;
}
}
if (diff == 0 && str1[i] != str2[i]) {
diff = str1[i] - str2[i];
}
printf("两个字符串第一个不相同字符的ASCII码之差为:%d\n", diff);
return 0;
}
```
在这个代码中,我们首先定义了两个名为 `str1` 和 `str2` 的字符数组,用于存储用户输入的两个字符串。然后,我们使用 `scanf()` 函数从键盘读取两个字符串。接着,我们使用一个 for 循环遍历两个字符串,当发现第一个不相同的字符时,我们就计算它们的 ASCII 码之差,并用 `break` 语句跳出循环。如果两个字符串的前缀部分完全相同,但是它们长度不同,我们也需要计算最后一个字符的 ASCII 码之差。最后,我们使用 `printf()` 函数输出两个字符串中第一个不相同字符的 ASCII 码之差。
希望这个回答可以帮助到您。