Avze。 2022-04-27 18:07 采纳率: 100%
浏览 82
已结题

求解!pta上显示”运行时错误“找不出错哪

本题要求编写程序,从给定字符串中查找某指定的字符。

输入格式:
输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。

输出格式:
如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。

我的代码
#include<stdio.h>
#include<string.h>
int main()
{
int i,j,z=0;
char x,a[80];
scanf("%c",&x);
getchar();
gets(a);
j=strlen(a);
for(i=j;i>=0;i--)
{
if(a[i]==x)
{
printf("index = %d",i);
z++;
break;
}
}
if(z==0)printf("Not Found");
return 0;
}

  • 写回答

2条回答 默认 最新

  • 不会长胖的斜杠 后端领域新星创作者 2022-04-27 18:21
    关注

    用的啥编译器?gets(a)这个函数在ISO/IEC 9899 2011(C11)标准中被移除
    C++一般不行,c可以
    可以用fgets()
    具体可以看https://blog.csdn.net/daijie_whu/article/details/81565004

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
  • aabyte 2022-04-27 19:57
    关注

    试试这个

    #include<stdio.h>
    #include<string.h>
    int main()
    {
        int i,j,z=0;
        char x,a[80];
        scanf("%c",&x);
        getchar();
        gets(a);
        j=strlen(a);
        for(i=j - 1; i>=0; i--)
        {
            if(a[i]==x)
            {
                printf("index = %d",i);
                z=1;
                break;
            }
        }
        if(z==0)printf("Not Found");
        return 0;
    }
    
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月6日
  • 已采纳回答 4月28日
  • 创建了问题 4月27日

悬赏问题

  • ¥15 win11安卓子系统打开谷歌登录不了切使用浏览器显示处于离线状态
  • ¥15 三维直角坐标系下,给定一个平面内四个点坐标,如何将四个点逆时针排序
  • ¥15 UnityWebRequest访问内网地址502
  • ¥20 Python语言来实现牛顿法(Newton's Method)解决非线性(系统)方程的问题。
  • ¥15 matlab控制工业相机采集图像
  • ¥25 R里做折线图和柱状图
  • ¥20 使用kokkos移植项目,遇到问题
  • ¥15 求该问题的Matlab代码
  • ¥15 python下使用pdpbox为何提示has no attribute 'pdp_isolate'?
  • ¥15 求java web病房管理系统项目,用netbeans做的