永发信息网

初学C语言,请教各位

答案:4  悬赏:60  手机版
解决时间 2021-04-06 00:00
  • 提问者网友:寂寞撕碎了回忆
  • 2021-04-05 01:21
初学C语言,请教各位
最佳答案
  • 五星知识达人网友:动情书生
  • 2021-04-05 02:44
1. C语言只能return回一个值,如果要返回多个值,可以
(1)设置全局变量
(2)把变量地址作为参数传递
(3)返回一个结构体,或指向一段内存的指针
2. 没必要写一个driver文件,所有函数都写在一个文件中也没有问题
3. main也是一个函数,return的就是0这个数字,表示程序运行成功
4. 你写的函数sumsqr()的返回值是void吧,要返回一个整型数字
5. main(void)和main()是一样的,void就是空的意思
全部回答
  • 1楼网友:佘樂
  • 2021-04-05 07:17
1.return语句是不可以返回两个语句的。去看看全局变量的用法吧。
2.这个叫定义函数。如:
main()
{
....
printf("%d,%d,%d",a,b,(a+b));
}
max(int,int)
{。。。
return(a+b)
}
3.return 0; 就是返回0这个数。
4.“sumsqr(k)”这个是matlab源代码,使用前要先声明的。
5.跟上一个void表示只做你给的“动作”,不跟则有值的返回。
  • 2楼网友:归鹤鸣
  • 2021-04-05 05:50
1.怎么样可以return回来2个值?比如说我要输出的是6 7,这样怎么来实现?
一种是用指针,将你要返回的值用写在指针里,此时不需要return了。例如:
void f(int *p1,int *p2)
{
*p1 = 6;
*p2 = 7;
}
main()
{
int a1,a2;
f(&a1,&a2);
}
将指针传递给函数f,这样调用完f以后,main中的变量a1和a2的值就改为6和7了。
另一种做法是用struct,将你要返回的变量定义到一个struct里面,然后返回这个struct就可以了。
2.现在所做的题目,老师都要我们写一个什么driver文件。。就是2个文件,把main写在driver文件里,而把其他程序写在另一个文件里...为什么要这样写呢?
将主函数和其它函数分开存放,可以便于程序的管理。将代码量很大时,这种优势就非常明显了。
3.是不是main里return 0不是return 0这个数字,但是其他函数里return的是一个数字?
其实是一样的,只是main里面return的0一般你不会去捕捉使用而已。
4.printf总给我一个错误:invalid use of void expression...
这是code:
#include <stdio.h>
int main() {
int k;
scanf("%d", &k);
printf("%d", sumsqr(k));
}
从你贴出的程序看,这段代码没有问题,应该是出在别的地方,可能是sumsqr子函数的问题,还有main被定义为了int返回类型,因此最后最好加上return 0; 当然这个不会引起错误。
5.有的时候main的后面跟上一个void,但有的时候没有...为什么呢?
不知道你的具体意思,如果是说main void的形式,那肯定是不对的,如果是void main()形式的定义,那是可以的,至少在vc下是ok的。因为c语言并没有规定main的返回类型。不过标准C++规定main必须是int返回类型。
  • 3楼网友:玩家
  • 2021-04-05 04:14
return语句只能返回一个函数值;
想要返回2个函数值用全局变量也行
比如 int a=7,b=8
max(int,int)
{....
return(a+b)
}
main()
{
....
printf("%d,%d,%d",a,b,(a+b));
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯