m0_63664562 2022-05-11 17:45 采纳率: 88.2%
浏览 104
已结题

c语言程序设计问题。

从键盘输入一个字符串和一个整数(m),编程移动字符串中的字符,移动规则如下:把第1到第m个字符,平移到字符串的后部,把第m+1到字符串末尾的字符平移到字符串的前部。提示:可借助其他字符数组。
测试输入:
abcdefghi
4
预期输出:
移动后的结果为efghiabcd

#include<stdio.h>
#include <string.h>
void main()
{
    //*****begin********
    int  n, len, j = 0, i;
    char a[100];
    scanf_s("%s", a);
    scanf_s("%d", &n);
    len = strlen(a);
    printf("移动后的结果为");
    for (i = n; i < len; i++)
    {
        printf("%c", a[i]);
    }
    for (i = 0; i < n; i++)
    {
        printf("%c", a[i]);
    }

    //*****end********
}

这段代码在测试网站上运行成功,但在visual2022就报错,什么原因?(多半是scanf的问题,但是好像格式也没什么问题啊,总是stdio里面报错)

  • 写回答

3条回答 默认 最新

  • 学习日记 后端领域新星创作者 2022-05-11 18:11
    关注

    这样就可以了,望采纳,谢谢,代码:

    #include<stdio.h>
    #include <string.h>
    void main()
    {
        //*****begin********
        int  n, len, j = 0, i;
        char a[100];
        scanf("%s", a);
        scanf("%d", &n);
        len = strlen(a);
        printf("移动后的结果为");
        for (i = n; i < len; i++)
        {
            printf("%c", a[i]);
        }
        for (i = 0; i < n; i++)
        {
            printf("%c", a[i]);
        }
    
        //*****end********
    }
    

    效果:

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月19日
  • 已采纳回答 5月11日
  • 修改了问题 5月11日
  • 赞助了问题酬金10元 5月11日
  • 展开全部

悬赏问题

  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘