输入两个字符串,逐个比较两个字符串相对应位置的字符大小,输出“两个字符串相等”或“第X个字符不相等,ASCII码差XX” 的提示。
时间: 2023-06-19 17:02:48 浏览: 56
可以使用以下 Python 代码实现:
```
s1 = input("请输入第一个字符串:")
s2 = input("请输入第二个字符串:")
if len(s1) != len(s2):
print("两个字符串长度不相等")
else:
for i in range(len(s1)):
if s1[i] != s2[i]:
print("第{}个字符不相等,ASCII码差{}".format(i+1, ord(s1[i])-ord(s2[i])))
break
else:
print("两个字符串相等")
```
代码中使用了 `ord()` 函数将字符转换为 ASCII 码,然后通过计算 ASCII 码的差值来判断两个字符的大小关系。其中 `for...else...` 语句可以判断循环是否正常结束,如果正常结束则表示两个字符串相等。
相关问题
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;
}
```
代码逻辑很简单,首先输入两个字符串,计算字符串长度,如果长度不相等则直接输出“两个字符串不相等”并退出程序,否则依次比较相应位置的字符,如果不相等则输出提示,最后如果所有字符都相等则输出“两个字符串相等”。
任意输入两个字符串,比较这两个字符串的大小
以下是使用C语言比较两个字符串大小的代码示例:
```c
#include <stdio.h>
int str_cmp(char *s1, char *s2){
int i = 0;
while (s1[i] == s2[i] && s1[i] != '\0')
i++;
if (s1[i] == '\0' && s2[i] == '\0')
return 0;
else
return s1[i] - s2[i];
}
int main(){
char c1[100], c2[100];
gets(c1);
gets(c2);
int i = str_cmp(c1, c2);
printf("%d", i);
putchar(10);
return 0;
}
```
这段代码中,我们定义了一个`str_cmp`函数来比较两个字符串的大小。函数中使用了一个循环来逐个比较字符串中的字符,直到遇到不相等的字符或者其中一个字符串结束。如果两个字符串完全相等,则返回0;如果不相等,则返回两个字符串第一个不相等字符的ASCII码差值。
在`main`函数中,我们通过`gets`函数分别输入两个字符串,并调用`str_cmp`函数来比较它们的大小。最后,我们使用`printf`函数输出比较结果。