编一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数;若s1=s2,输出0;若s1<s2, 输出一个负数。不要用strcpy函数。 两个字符串用gets函数读入。输出的正数或负数的绝对值是相比较的两个字符串相应字符的ascii码的差值.
时间: 2023-12-29 16:56:10 浏览: 83
C语言程序设计-编写一个程序,将字符数组s2中的全部字符拷贝到字符数组s1中,不能使用strcpy函数。拷贝时,
5星 · 资源好评率100%
好的,这是一个关于字符串比较的问题。我可以为您编写一个程序,进行字符串比较并输出对应的数值。
以下是程序代码:
```
#include <stdio.h>
#include <string.h>
int main()
{
char s1[100], s2[100];
int i, cmp;
printf("请输入第一个字符串:");
gets(s1);
printf("请输入第二个字符串:");
gets(s2);
for(i=0; s1[i]!='\0' && s2[i]!='\0'; i++)
{
if(s1[i] > s2[i])
{
cmp = s1[i] - s2[i];
break;
}
else if(s1[i] < s2[i])
{
cmp = s1[i] - s2[i];
break;
}
else
cmp = 0;
}
printf("字符串比较结果为:%d", cmp);
return 0;
}
```
程序中使用了 gets 函数来读入两个字符串,然后使用 for 循环对两个字符串进行逐个字符的比较,根据比较结果来设置 cmp 变量的值。最后输出 cmp 的值即为两个字符串的比较结果。如果比较结果为正数,说明 s1 大于 s2,否则反之。如果比较结果为 0,则说明两个字符串相等。
阅读全文