aaasdfgzzy 2022-03-31 20:56 采纳率: 79.4%
浏览 550
已结题

编程,键盘输入一个长度不超过80个字符的字符串,然后从第一个字符开始间隔地输出该串,请用指针完成。

//为什么第一个代码输出乱码

#include<stdio.h>
#include<string.h>
int main()
{
    char i,a[80],c,*p;
    p=a;
    printf("请输入一串字符:\n");
    scanf("%s",p);
    c=strlen(a);
    for(i=0;i<c;i=i+2)
        printf("%c",p+i);
    printf("\n");
    return 0;
}

//第二个代码输出正确

#include<stdio.h>
#include<string.h>
int main()
{
    char i,a[80],c,*p;
    p=a;
    printf("请输入一串字符:\n");
    scanf("%s",p);
    c=strlen(a);
    for(i=0;i<c;i++)
        printf("%c",a[i++]);
    printf("\n");
    return 0;
}

  • 写回答

2条回答 默认 最新

  • 浪客 2022-03-31 21:08
    关注
    printf("%c",*(p+i));
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月31日
  • 已采纳回答 3月31日
  • 修改了问题 3月31日
  • 创建了问题 3月31日

悬赏问题

  • ¥20 求解答(matlab)
  • ¥30 ffmpeg库使用过程中遇到的问题
  • ¥15 pyqt5 中python如何通过Qtwebchannel主动发消息给web前端
  • ¥15 关于HTML中title获取xml内容的问题
  • ¥15 fanuc机器人PRIO083数字信号未复原错误,如何解决?
  • ¥20 如何为现有电路板增加远程控制功能
  • ¥15 C#点击按钮的时候的循环次数就是最后一次,如何是循环第几次的值?
  • ¥15 UE5打包失败,求解决
  • ¥15 请问STM32G431的CANOPEN协议函数怎么写
  • ¥15 graphpad prism 三因素重复测定报错