如果我为变量answerRequest
和s
输入'hello'变量我无法提供输入
a
答案 0 :(得分:0)
首先尝试使用scanf("%c",&a)
scanf。
然后只使用一个scanf
读取三个变量。
试试这个程序,它将解决您的问题:
#include <stdio.h>
#include <string.h>
int main()
{
char s[100], a, b;
//i am not able to get this value,please help me how to get three variables s,a,b at runtime
scanf("%s %c %c", s, &a, &b);
int n = strlen(s), count = 0;
for(int i = 0; i < (n - 1); i++){
if(s[i] == a && s[i+1] == b)
count++;
}
printf("%d",count);
return 0;
}
答案 1 :(得分:0)
扫描字符时,在字符修饰符前使用空格,并将char作为指针传递,而不是值。要扫描整个字符串,请使用修改后的%s
。在这种情况下,您不需要编写&s
,因为s
本身已包含数组的内存地址。如果您仍想使用&
infront,请使用&s[0]
,因为&s[0] == s
。
char s[100], a, b;
scanf("%s", s);
scanf(" %c", &a);
scanf(" %c", &b);