我有一个向用户询问用户变量和用户编号的函数。
void numReplace(char infix[50])
{
char userVar;
int userNum;
printf("Please enter the variable you want to change\n");
scanf("%c", &userVar);
printf("Please enter the replacement value for the variable\n");
scanf("%d", &userNum);
printf("%c %d", userVar, userNum);
int i=0;
char chrr;
infix[50] = '\0';
while((chrr=infix[i++])!='\0')
{
if (chrr == userVar){
chrr = userNum;
}
}
}
在运行程序时,应询问userVar和userNum。但是输出是:
Please enter the variable you want to change
Please enter the replacement value for the variable
1
1
它只接受一个变量,我的代码没有问题。有人可以帮我吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
此uservar
可能已经收到您上次输入的\n
。如果您在此输入之前已输入,请使用getchar()
接受换行符。