调试下列程序,并改正其中的错误。程序的功能是:从键盘上输入两个字符串,并判断两个字符串是否相等。

2024-12-25 12:12:32
推荐回答(2个)
回答1:

在KIEL C51上调试通过。改过的程序如下:
#include /* prototype declarations for I/O functions */
void main(){
char str1[10], str2[10];
int j,flag;
printf("\n");
scanf("%s%s",str1,str2);
while (str1[j]==str2[j])
{
j++;
if (str1[j]=='\0'||str2[j]=='\0')
{
break;
}
}
if (str1[j]=='\0'&&str2[j]=='\0')
{
flag=0;
}
else
{
flag=1;
}
if (flag)
{
printf("the two string are equal.");
}
else
{
printf("the two string are not equal.");
}
}

回答2:

#include
void main()
{
char str1[10], str2[10];
int j=0, flag;
printf("\n");
scanf("%s%s", &str1[10],&str2[10]);
while(str1[j] == str2[j])
{
j++;
if (str1[j]=='\0' || str2[j]=='\0')
break;
}
if(str1[j]=='\0'&&str2[j]=='\0')
flag= 1;
else
flag = 0;
if(flag)
printf("the two string are equal.");
else
printf("the two string arenot equal.");
system("pause");

}