guoqing_ 2023-04-29 12:17 采纳率: 46.2%
浏览 12
已结题

字符数 组 输出时没反应 怀疑是'\0'判断有问题


#include<stdio.h>
#include<string.h>
void main()
{
char a[80],c;
int i;
printf("Input a character:");
scanf("%c",&c);
    if(1)
    {
        printf("Input a string:");
        for(i=0;i<80;i++)
        {
            gets(a);
            if(a[i]=='\r')break;
        }

    printf("index=%d",i);
    }
    else
    {
        printf("Not Found");
    }

}

题目
输入一个字符,再输入一个以回车结束的字符串(少于80 个字符),在字符串中查找该字符。如果找到,则输出该字符在字符串中所对应的最大下标(下标从0 开始);否则输出“Not Found”。

【输入形式】

输入一个字符和一个以回车结束的字符串

【输入输出样例1】(下划线部分表示输入)

Input a character:m

Input a string:programming

index=7

现象是输出结果时没反应

img

  • 写回答

2条回答 默认 最新

  • threenewbee 2023-04-29 12:37
    关注

    整个不对
    if(1)
    这里你想写 while (1)

    #include <stdio.h>
    #include <string.h>
    
    int main() {
        char c;
        char str[81];
        int max_index = -1;
    
        printf("请输入一个字符:");
        scanf("%c", &c);
        printf("请输入一个字符串(少于80个字符):");
        scanf("%s", str);
    
        for (int i = 0; i < strlen(str); i++) {
            if (str[i] == c) {
                max_index = i;
            }
        }
    
        if (max_index >= 0) {
            printf("%c在字符串中所对应的最大下标为:%d\n", c, max_index);
        } else {
            printf("Not Found\n");
        }
    
        return 0;
    }
    
    
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月27日
  • 创建了问题 4月29日

悬赏问题

  • ¥15 MacBook pro m3max上用vscode运行c语言没有反应
  • ¥15 结构功能耦合指标计算
  • ¥50 AI大模型精调(百度千帆、飞浆)
  • ¥15 非科班怎么跑代码?如何导数据和调参
  • ¥15 福州市的全人群死因监测点死亡原因报表
  • ¥15 Altair EDEM中生成一个颗粒,并且各个方向没有初始速度
  • ¥15 系统2008r2 装机配置推荐一下
  • ¥15 悬赏Python-playwright部署在centos7上
  • ¥15 psoc creator软件有没有人能远程安装啊
  • ¥15 快速扫描算法求解Eikonal方程咨询