zhoujie13 发表于 2018-3-5 12:47:19

第十九集的动手作业第一题

#include<stdio.h>
#include<string.h>

int main()
{
        char str1, str2;
        int i, n, result;
        printf("请输入第一个字符串: ");
        while((str1 = getchar()) != '\n')
                ;
        printf("请输入第二个字符串: ");
        while((str2 = getchar()) != '\n')
                ;
        printf("请输入比较的字符数: ");
        scanf("%d", &n);
        for(i = 0; i < n; i++)
        {

                result = str1 - str2;
               
                if(result != 0) break; //当两个字符不相等立即跳出循环
                else
                {
                        result = 0;
                }
               
        }
        printf("比较结果: %d", result);
       
        return 0;
       
}我的代码哪里出了问题,还有就是小甲鱼的 最后的循环我看不懂
for (i = 0; i < n; i++)
      {
                if (str1 - str2)
                {
                        i++;
                        break;
                }
      }

      printf("比较的结果是:%d\n", str1 - str2);

BngThea 发表于 2018-3-5 12:48:57

你的代码中两个while循环之前 i 都没有初始化为0

zhoujie13 发表于 2018-3-5 20:57:33

BngThea 发表于 2018-3-5 12:48
你的代码中两个while循环之前 i 都没有初始化为0

不是主要原因,初始化了结果也不对

zhoujie13 发表于 2018-3-5 21:17:48

zhoujie13 发表于 2018-3-5 20:57
不是主要原因,初始化了结果也不对

还真是i初始化问题,终于搞定了
页: [1]
查看完整版本: 第十九集的动手作业第一题