gpt4 book ai didi

c - 制表符的可变长度 (\t)

转载 作者:太空宇宙 更新时间:2023-11-04 00:28:52 25 4
gpt4 key购买 nike

虽然我已经解决了我的问题,但在这样做时我遇到了\t 的意外行为。单个\t 的制表符长度不同。这是我的代码:

  #include<stdio.h>

int calculate_intpart_qutent(int dividend, int diviser);
int main()
{

int a;
int b;
int choice;


do
{
printf("Enter the Dividend (a) :\t");
scanf("%d", &a);

printf("\nEnter the Divisor (b) :\t");
scanf("%d", &b);

printf("\n\nThe quotient is:\t%d", calculate_qutent(a, b));

printf("\n\nDo you want to try again?(Y\\N):\t");
choice = getchar();

if (choice == '\n') choice = getchar();
printf("\n\n\n");

} while (choice=='y'|| choice=='Y');


}

int calculate_intpart_qutent(int dividend, int diviser)
{
return (dividend/diviser);

}

这是我的输出:

enter image description here

因为我在第一个 printf 语句中都使用了单个制表符,为什么我在输出屏幕上得到不同的制表符长度?我在这里做错了什么?

我正在使用 Visual Studio 2017 RC。

最佳答案

Since I have used single tab in both of the first printf statements, why I'm getting different tab length on my output screen?

使用选项卡 won't guarantee打印空格的数量。

如果你想在 printf 中使用固定长度,那么试试 %-30s 之类的东西。它保证打印的字符串有 30 个空格,- 表示左对齐。

    printf("%-30s", "Enter the Dividend (a) :");
scanf("%d", &a);

printf("\n%-30s", "Enter the Divisor (b) :");
scanf("%d", &b);

关于c - 制表符的可变长度 (\t),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41764049/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com