鱼C论坛

 找回密码
 立即注册
查看: 2803|回复: 7

[已解决]字符输出

[复制链接]
发表于 2022-11-17 16:29:43 | 显示全部楼层 |阅读模式

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

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

x
#include<stdio.h>
int main()
{
        char a[]="computer";
        char *p=a;
        int k=0;
        while(p)
        {
                p=p+k;
                printf("%c",*p);
                k=k+2;
        }
}
间隔输出computer,为什么没有输出正确结果啊,请问哪里错了?
最佳答案
2022-11-17 16:38:19
你这个 while(p) 在 p 一直不是空指针的时候会一直运行,然后就会导致这个 p 指针访问到未定义内存。还有,这并不是间隔输出,想要实现间隔输出需要删去第11行,然后把第9行变成p = p+2

代码:
#include<stdio.h>
#include<string.h>
int main()
{
        char a[]="computer";
        char *p=a;
        while(p < a+strlen(a))
        {
                printf("%c",*p);
                        p = p+2;
                }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-17 16:38:19 | 显示全部楼层    本楼为最佳答案   
你这个 while(p) 在 p 一直不是空指针的时候会一直运行,然后就会导致这个 p 指针访问到未定义内存。还有,这并不是间隔输出,想要实现间隔输出需要删去第11行,然后把第9行变成p = p+2

代码:
#include<stdio.h>
#include<string.h>
int main()
{
        char a[]="computer";
        char *p=a;
        while(p < a+strlen(a))
        {
                printf("%c",*p);
                        p = p+2;
                }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-17 17:54:03 | 显示全部楼层
本帖最后由 jackz007 于 2022-11-17 17:56 编辑

间隔输出computer 是什么意思,无穷多个?,你的程序是死循环

你想得到输出 "computermputeruterer" 是这个意思?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-17 18:19:53 | 显示全部楼层
本帖最后由 jhq999 于 2022-11-17 20:35 编辑
char a[]="computer";
        char *p=a;
        do
        {
                printf("%c",*p);
                p+=2;
        }while(*(p-1)&&*p);
int i=0,k=4;
        do
        {
                printf("%c",*p);
                for(i=1;i<=k;i+=1)if('\0'==*(p+i))break;
                if(i<k)break;
                p+=k;

        }while(1);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-18 00:17:16 | 显示全部楼层
不知你想输出什么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-18 08:57:02 | 显示全部楼层
桃花飞舞 发表于 2022-11-18 00:17
不知你想输出什么?

他可能想要这个:
cmptr
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-18 23:28:53 | 显示全部楼层
zhangjinxuan 发表于 2022-11-18 08:57
他可能想要这个:
cmptr

不是,他是想要cmue
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-19 08:42:58 | 显示全部楼层

不好意思,看错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-17 09:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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