鱼C论坛

 找回密码
 立即注册
查看: 1050|回复: 8

[已解决]c语言 第19课 动动手第一题 实现strncmp函数的功能

[复制链接]
发表于 2022-2-10 18:14:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>

int  main()
{
        char a[256]={};
        char b[256]={};
        int ch,i,num;
       
        printf("请输入第一个字符串:");
       
        for(i=0;a[i]='\n';i++)
        {
                a[i]=getchar();               //为什么不能这么写呢,我输入asd再按回车,字符串应该"a" "s" "d" "\n",在for循环中第一次判断的条件是a[0](我试了一下系统a[0]打印出来等于0),第二次a[0]='a',第三次a[1]='s',第四次a[2]='d',第五次a[3]='\n',第五次的时候不是不满足for循环的条件了吗,为什么我一直按回车都是没反应呢?
        }
       
        printf("请输入第二个字符串:");
       
        ch=0;
        for(i=0;ch!='\n';i++)
        {
                ch=getchar();
                b[i]=ch;
        }
       
        printf("请输入比较的字符个数:");
        scanf("%d",&num);
       
        i=0;       
        while(i<num)
        {
                if(a[i]!=b[i])
                {
                        break;
                }
                i++;
        }
       
        printf("比较的结果是:%d\n",a[i]-b[i]);
       
        return 0;
}
最佳答案
2022-2-10 21:22:12
投入就放过 发表于 2022-2-10 21:09
我改过来了,还是按回车没反应

试试
for(i=0;a[i-1]!='\n';i++)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-2-10 18:19:12 | 显示全部楼层
还是老问题
for(i=0;a[i]!='\n';i++)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-10 18:22:51 | 显示全部楼层
学编程这么不认真?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-10 21:09:05 | 显示全部楼层

我改过来了,还是按回车没反应
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-10 21:09:39 | 显示全部楼层
人造人 发表于 2022-2-10 18:22
学编程这么不认真?

用另一种思路不小心多删了个!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-10 21:22:12 | 显示全部楼层    本楼为最佳答案   
投入就放过 发表于 2022-2-10 21:09
我改过来了,还是按回车没反应

试试
for(i=0;a[i-1]!='\n';i++)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-10 21:29:03 | 显示全部楼层

可以了  为什么-1就行了呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-10 21:54:29 | 显示全部楼层
先判断,再执行

如果是 a[i]!='\n' 的话,
那每一次判断的结果都是false,因为a[i]总是'\0'。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-10 22:22:53 | 显示全部楼层
ckblt 发表于 2022-2-10 21:54
先判断,再执行

如果是 a!='\n' 的话,

感谢感谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 13:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表