c语言中怎么输出字符串中的某个字符
发布网友
发布时间:2022-04-23 05:28
我来回答
共5个回答
热心网友
时间:2023-09-20 20:38
c语言来中的字符串实际上是字符数组,如果想输出某位上的字符,可采用数组元素输出方式进行输源出,百如:
char
s[]="abcde";
printf("%c",
s[3]
);
//输出第四个字符度'd',%c表示输出单个字符
还可以采用指针方式输出相应位的字问符,如:
char
*p=s
;
//字符字符指针p,指向字符串首地址
printf("%c",
*(p+3)
);
//输出第四个字符'd'
或
p+=3;
//先移动指针到第四个字符位置
printf("%c",
*p
);
//输出当前字答符'd'
热心网友
时间:2023-09-20 20:39
错误在于你判断了第一个非@字符时就已经输出没有字符@退出循环了所以不会检测@了。改成下面就行了:
#include
#include
int
main()
{
char
sh[100],n=0;
gets(sh);
for(int
i=0;sh[i];i
)
if(sh[i]=='@')
n
;
if(n==0)
printf("没有字符
@\n");
else
printf("有字符
@\n");
}
热心网友
时间:2023-09-20 20:39
你的程序是对的。
你说的是“输入一个字符,想得到第二个字符”表述错了,你只输入了一个字符,怎么会有第二个字符呢?
若输入"abc",那么printf("%c",s[1]);,会得到第二个字符。
以上。
热心网友
时间:2023-09-20 20:40
第二个字符应该是s[1]
第一个字符是s[0]
printf
("%c\n",
s[1]);
这里输出最好加\n换行
热心网友
时间:2023-09-20 20:40
这样是可以的
前提是你输入的要大于4个字符
你这里的问题是括号是中文的。