函数调用的问题
#include<stdio.h> 加注释的地方不明白:在函数定义的时候并没有说明要返回一个值,#include<stdlib.h> 这个roll的值怎么会被a, b两个变量接收?
(程序在Turbo c 2.01能正确运行)
int g (void);
main()
{
int a, b, sum=0, c, d;
srand(time(NULL));
for(d=1; d<=10; d++)
{
a=g(); /*这里为什么能接收 int g (void) 所返回的值*/
b=g(); /*这里为什么也能接收 int g (void)所返回的值*/
sum=a*b;
printf("How much is %d times %d?\n", a, b);
printf("The answer is: ");
scanf("%d", &c);
while(c!=-1)
{
if(c==sum)
{
printf("Very good!\n\n");
break;
}
else
{
printf("No. Please try again.\n");
printf("The answer is: ");
scanf("%d", &c);
}
}
if(c==-1)
break;
}
getch();
}
int g (void) /*函数定义的时候并没有说明要返回一个值*/
{
int roll;
roll=rand()%10;
return roll; /*这里返回了一个0到9的整数值*/
}