C语言编写输入两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差
时间: 2024-03-10 15:45:38 浏览: 108
好的,下面是一个 C 语言的例子,可以实现你的需求:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[100], str2[100];
printf("请输入第一个字符串: ");
scanf("%s", str1);
printf("请输入第二个字符串: ");
scanf("%s", str2);
int len1 = strlen(str1), len2 = strlen(str2);
int len = len1 < len2 ? len1 : len2;
int i;
for (i = 0; i < len; i++) {
if (str1[i] != str2[i]) {
printf("%d\n", str1[i] - str2[i]);
break;
}
}
if (i == len && len1 != len2) {
printf("%d\n", len1 - len2);
}
return 0;
}
```
这个程序会先让你分别输入两个字符串,然后比较它们的每个字符。如果遇到第一个不同的字符,就会计算它们的ASCII码之差并输出。如果两个字符串前面的字符都相同,但长度不同,程序会输出两个字符串长度之差。
相关问题
C语言编写程序实现,对键盘输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。例如,输入的两个字符串分别为“abcdefg”和“abceef”,则输出为-1。
好的,我来为您提供实现这个功能的代码。
```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 码之差。
希望这个回答可以帮助到您。
c语言输入两个字符串,逐个比较两个字符串相对应位置的字符大小,输出“两个字符串相等”或“第X个字符不相等,ASCII码差XX” 的提示。
下面是一个简单的 C 语言代码实现:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[100];
int len1, len2, i, flag = 0;
printf("输入第一个字符串:");
scanf("%s", str1);
printf("输入第二个字符串:");
scanf("%s", str2);
len1 = strlen(str1);
len2 = strlen(str2);
if(len1 != len2)
{
printf("两个字符串不相等\n");
return 0;
}
for(i = 0; i < len1; i++)
{
if(str1[i] != str2[i])
{
flag = 1;
printf("第%d个字符不相等,ASCII码差%d\n", i+1, str1[i]-str2[i]);
}
}
if(flag == 0)
{
printf("两个字符串相等\n");
}
return 0;
}
```
代码逻辑很简单,首先输入两个字符串,计算字符串长度,如果长度不相等则直接输出“两个字符串不相等”并退出程序,否则依次比较相应位置的字符,如果不相等则输出提示,最后如果所有字符都相等则输出“两个字符串相等”。
阅读全文