标题:关于字符的,新手求指导
只看楼主
韩学敏
Rank: 2
等 级:论坛游民
帖 子:52
专家分:26
注 册:2012-11-3
结帖率:82.35%
已结贴  问题点数:20 回复次数:3 
关于字符的,新手求指导
输入一个字符,再输入一个以回车为结束的字符串,少于80个字符,在字符串中寻找那个字符,并且输出其对应的最大下标。   
我找不到我的错误在哪里
#include<stdio.h>
int main(void)
{
    char n;
    int i=0,j,index;
    char a[80];
    printf("input a character:");
    n=getchar();
    printf("intput a string:");
    while((a[i]=getchar())!='\n');
    {
        i++;
        a[i]=getchar();   
    }
    a[i+1]='\0';
    for(j=0;j<i;j++)
    {
        if(a[j]==n)
            index=j;
    }
    printf("index=%d",index);
    return 0;
}
搜索更多相关主题的帖子: character include 字符串 
2012-11-25 23:14
StarFall
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:193
专家分:553
注 册:2012-10-1
得分:20 
#include<stdio.h>
int main(void)
{
char n;
int i=0,j,index;
char a[80];
printf("input a character:");
n=getchar();
printf("intput a string:");getchar();
//while((a[i]=getchar())!='\n');
//{
//i++;
//}
gets(a);
//a[i+1]='\0';
puts(a);
for(j=0;j<80;j++)
{
if(a[j]==n)
index=j;
}
printf("index=%d",index);
return 0;
}

由于数组从0开始 可以考虑输出index的时候+1再输出

去追寻更高的技术领域。永不停止。
2012-11-25 23:28
StarFall
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:193
专家分:553
注 册:2012-10-1
得分:0 
回复 楼主 韩学敏
#include<stdio.h>
int main(void)
{
char n;
int i=0,j,index;
char a[80];
printf("input a character:");
n=getchar();
printf("intput a string:");getchar();
while((a[i]=getchar())!='\n')
{
i++;
}


a[i+1]='\0';

for(j=0;j<i;j++)
{
if(a[j]==n)
index=j;
}
printf("index=%d",index);
return 0;
}
如果要用你的方法读入的话,去掉while()后面的分号就可以了, 改成这样。  输出最好加一。

去追寻更高的技术领域。永不停止。
2012-11-25 23:35
韩学敏
Rank: 2
等 级:论坛游民
帖 子:52
专家分:26
注 册:2012-11-3
得分:0 
回复 3楼 StarFall
printf("intput a string:");getchar();                为啥后面跟一个getchar()    而且没有变量名。。。。是干嘛用的,求解,谢谢
2012-11-26 11:52



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-388407-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.218183 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved