C语言!!!!
C语言!!!!求的a[0]*b[0]+a[1]*b[1]+.......+a[n-1]*b[n-1]题目要求自己scanf输入数组长度,且函数类型必须是double类型。...
C语言!!!!求的a[0]*b[0]+a[1]*b[1]+.......+a[n-1]*b[n-1]
题目要求自己scanf输入数组长度,且函数类型必须是double类型。
有两个疑问
第一个疑问,为什么我用double型得出答案始终是0,全部用int型却又可以得出正确答案!
第二个疑问,我全部用int型后,为什么子函数那里如果我不给num赋值为0,直接int num,答案就是错的 展开
题目要求自己scanf输入数组长度,且函数类型必须是double类型。
有两个疑问
第一个疑问,为什么我用double型得出答案始终是0,全部用int型却又可以得出正确答案!
第二个疑问,我全部用int型后,为什么子函数那里如果我不给num赋值为0,直接int num,答案就是错的 展开
5个回答
展开全部
第一个疑问,为什么我用double型得出答案始终是0,全部用int型却又可以得出正确答案!
这个感觉跟你定义有关
#define N 10
double a[N], b[N];
这样试试
第二个疑问,我全部用int型后,为什么子函数那里如果我不给num赋值为0,直接int num,答案就是错的
所有变量都需要初始化,一般需要手动初始化为零。如果不初始化,可能你调试的时候是对的,最后运行却可能出错。
这个感觉跟你定义有关
#define N 10
double a[N], b[N];
这样试试
第二个疑问,我全部用int型后,为什么子函数那里如果我不给num赋值为0,直接int num,答案就是错的
所有变量都需要初始化,一般需要手动初始化为零。如果不初始化,可能你调试的时候是对的,最后运行却可能出错。
更多追问追答
追问
这个不行,题目要求自己输入数组长度
追答
哦哦
float 用 "%f"
double 用 "%lf"
修改试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
scanf("%f",&a[i]);和scanf("%f",&b[i]);写错了,应该是scanf("%lf",&a[i]);和scanf("%lf",&b[i]);——注意不是1f而是LF的小写。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C语言是一中编程语言,它的年龄可能比你还大。C语言是
编程的鼻祖级人物,C语言其实啥都可以写,唯一美中不足的就是C语言写起来很烦,因为涉及了太多底层操作,所有代码量远超其他编程语言。当然了,因为底层操作多,避免了重复操作,所以他是最高效的语言。
编程的鼻祖级人物,C语言其实啥都可以写,唯一美中不足的就是C语言写起来很烦,因为涉及了太多底层操作,所有代码量远超其他编程语言。当然了,因为底层操作多,避免了重复操作,所以他是最高效的语言。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询