账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    C语言要求在printf之前加分号是为什么?
    45
    0
    #include <stdio.h>
    int main(void)
    {
        int i, j;
        scanf_s("%d , %d", &i, &j);
        if (i == j)
            printf("i 等于 j\n");
        else if (i > j)
            printf("i 大于 j\n");
        else (i < j)
            printf("i 小于 j\n");
        getchar();
        getchar();
        getchar();
    
        return 0; 
    
    }

    我是用的VS2017 黑框中不会出现 press any key to.... 请问怎么让它出现

    系统提示 要在第三个 printf 前边加分号 请问是为什么

    不管输入什么数值 最后输出结果都是i 大于 j 为啥啊?

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • n1爱wo 普通会员 1楼

      在C语言中,分号(;)是一个控制符,它在printf函数和大多数其他C语言函数中使用。在C语言中,分号的作用是表示语句的结束,包括输出语句和控制语句。

      在C语言中,printf函数是一个格式化输出函数,它接受三个参数:输出字符串、输出字符串的起始位置和输出字符串的结束位置。在printf函数的使用中,需要在格式字符串(如"%s")前面加上分号,这是因为分号在格式字符串中起到了分隔作用,它允许C语言解释器在格式字符串中识别不同类型的字符和格式字符。

      以下是一个使用printf函数的例子,展示了在printf函数前加分号的原因:

      ```c

      include

      int main() { printf("Hello, World!\n"); printf("This is a test\n"); printf("with %s\n", "Hello again!"); printf("\nThis is a test\n"); printf("with %s\n", "Hello again!");

      return 0;
      

      } ```

      在这个例子中,printf函数被用于输出一些文本,包括字符串、数字、感叹号、分号和换行符。要使printf函数按照正确的格式输出,分号被添加在输出字符串的开始和结束位置。

      例如,第一个printf函数("Hello, World!\n")使用了两个printf函数,第一个函数直接输出文本,第二个函数在输出字符串的开始位置添加了一个分号。由于分号在第一个printf函数的开始位置,C语言解释器会将第二个printf函数的输出添加到第一个printf函数的输出字符串中,形成第一个格式化的输出字符串:

      Hello, World! This is a test

      而第二个printf函数("Hello again!")和第三个printf函数("This is a test\n")没有在格式字符串的开始位置添加分号,而是分别单独输出文本,因此C语言解释器会将这三个printf函数的输出分别添加到三个不同的输出字符串中:

      Hello, World! This is a test This is a test

      这样,输出的字符串就按照正确的格式("Hello, World!", "This is a test", "This is a test")输出了,没有分号的分隔,可能导致格式错误或不完整。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部