初学C语言,请教各位

来源:百度知道 编辑:UC知道 时间:2024/07/16 03:31:41
1.怎么样可以return回来2个值?比如说我要输出的是6 7,这样怎么来实现?

2.现在所做的题目,老师都要我们写一个什么driver文件。。就是2个文件,把main写在driver文件里,而把其他程序写在另一个文件里...为什么要这样写呢?

3.是不是main里return 0不是return 0这个数字,但是其他函数里return的是一个数字?

4.printf总给我一个错误:invalid use of void expression...
这是code:
#include <stdio.h>
int main() {
int k;
scanf("%d", &k);
printf("%d", sumsqr(k));
}

5.有的时候main的后面跟上一个void,但有的时候没有...为什么呢?

谢谢大家...

1. C语言只能return回一个值,如果要返回多个值,可以
(1)设置全局变量
(2)把变量地址作为参数传递
(3)返回一个结构体,或指向一段内存的指针
2. 没必要写一个driver文件,所有函数都写在一个文件中也没有问题
3. main也是一个函数,return的就是0这个数字,表示程序运行成功
4. 你写的函数sumsqr()的返回值是void吧,要返回一个整型数字
5. main(void)和main()是一样的,void就是空的意思

return语句只能返回一个函数值;
想要返回2个函数值用全局变量也行
比如 int a=7,b=8
max(int,int)
{....
return(a+b)
}
main()
{
....
printf("%d,%d,%d",a,b,(a+b));
}

wwww

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不是retu