c语言字符串匹配问题

我编的程序,哪里有错误,编译不了。求指教。题目见图片#include<stdio.h>#include<conio.h>intmain(){charstr1[28],st... 我编的程序,哪里有错误,编译不了。求指教。题目见图片
#include<stdio.h>#include<conio.h>int main(){ char str1[28],str2[30]; int i; str1[28]={"hello world!goodbye world!"}; scanf("%c",str2); for(i=0;i<=27;i++) { if (str1[i]==str2[i]) printf("%d",i); } getch();

}
展开
 我来答
red100green
2014-04-18 · 超过10用户采纳过TA的回答
知道答主
回答量:47
采纳率:0%
帮助的人:26.7万
展开全部
  1. 输入字符串要用gets(str2);

  2. for循环只能判断第一个字符是否匹配,不能判断串匹配

追问
请问那该怎么修改呀?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蒯焦
2014-04-18 · TA获得超过197个赞
知道小有建树答主
回答量:669
采纳率:0%
帮助的人:474万
展开全部
(char str1[28],str2[30];
int i;
str1[28]={"hello world!goodbye world!"};)有错 str1只能在定义的时候直接赋值,不能先定义后赋值
所以char str1[28]={"hello world!goodbye world!"}
追问

编译时还是这行有问题

追答
str2是一个常量 不能直接赋值,只能给str2[i]赋值 
#include
#include
int main()
{
char str1[28]={"hello world!goodbye world!"},str2;
int i;

scanf("%c",&str2);
for(i=0;i<=27;i++)
{
if (str1[i]==str2)
printf("%d",i);
} }
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我狂我笑001
2014-04-18 · TA获得超过711个赞
知道小有建树答主
回答量:356
采纳率:0%
帮助的人:369万
展开全部
char str1[28]="hello world!goodbye world!";

把花括号去掉

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式