我打算做的是输入字符并将其用作模式。我试过使用 getchar() 但它不起作用。我听说过使用 scanf 但每当我按下键盘上特殊字符的“shift”时它就会跳过并停止。
int i, j, n;
char c;
c = getchar();
printf("Enter value of n: ");
scanf("%d", &n);
printf("Enter a Character: ");
getchar();
for(i=1; i<=n; i++)
{
for(j=1; j<=i; j++)
{
printf("%c", c);
}
printf("\n");
}
最佳答案
您需要将 getchar
返回的值赋给变量 c
,并且您对 getchar
的调用是多余的,这就是它跳过的原因读取所需的输入:
int i, j, n;
char c;
printf("Enter value of n: ");
scanf("%d", &n);
printf("Enter a Character: ");
scanf(" %c", &c);
for(i=1; i<=n; i++)
{
for(j=1; j<=i; j++)
{
printf("%c", c);
}
printf("\n");
}
关于c - 在 C 中接受单个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57964318/