栗子吃咸菜 发表于 2021-9-12 14:19:40

关于scanf读取数据,输入格式的问题

问题:输入两个整数:20, 40,观察程序运行的结果,思考为什么?
不是很懂-858993460怎么出来的,能解释一下为什么吗

#include<stdio.h>/*文件预处理*/
int add(int x,int y)
{            
   int z;         
   z=x+y;         
   return z;
}               

int main( )   /* 主函数 */
{                           
   int add(int,int);            /* 函数的说明,告诉系统在主函数中要调用add函数 */
   int a,b,c;                    /* 变量的定义*/
   scanf("%d %d",&a,&b);
   c=add(a,b);                 /* 函数调用 */
   printf("%d+%d=%d\n",a,b,c);    /* 调用系统输出函数printf,%d为格式控制符,依次用后面的变量值填充,以整数形式输出 */
}

大马强 发表于 2021-9-12 14:54:08

输入方式不对,要与自己scanf里的格式对应
scanf("%d %d",&a,&b);
40 60
scanf("%d,%d",&a,&b);
40,60

西瓜小刚 发表于 2021-9-13 09:38:27

华强:你这scanf格式有问题啊。
栗子:你就说能不能运行吧
华强:格式没问题肯定能正常运行啊
栗子:你是故意找茬是不是,你说不说吧
华强:scanf("%d %d",&a,&b); 呐,没逗号
栗子:。。。

栗子吃咸菜 发表于 2021-9-16 10:53:19

大马强 发表于 2021-9-12 14:54
输入方式不对,要与自己scanf里的格式对应

40 60


我懂这个道理,但是我不懂打印出来一串数字的来源是什么,而且两次打印数字都相同

大马强 发表于 2021-9-16 11:13:06

这串数字应该和编译器有关
页: [1]
查看完整版本: 关于scanf读取数据,输入格式的问题