getinput是个什么东西
include<stdio.h>struct Date
{
int year;
int month;
int day;
};
struct Book
{
char title;
char author;
float prince;
struct Date date;
struct publisher;
};
int main()
{
struct Book b1,b2;
printf("请录入第一本书的信息...\n");
b1=getInput(b1); 想了老半天就是理解不了这个getinput( b1),小甲鱼说是把这个空的结构体变量b1赋值过去
我能理解为这个getinput是个地址吗 我隐约知道这个是自定义函数 但是这个自定义函数有什么用吗 有大佬帮我解释的明白一点吗 有点笨 太专业化 听不懂
return 0;
} 你理解得对, getInput(b1) 在这个例子中应该就是一个自定义函数,可能是用于接收用户输入并返回一个填充了信息的 Book 结构体。
下面是一个可能的定义方式:
struct Book getInput(struct Book book){
printf("请输入书名:\n");
scanf("%s",book.title);
printf("请输入作者:\n");
scanf("%s",book.author);
printf("请输入价格:\n");
scanf("%f",&book.prince);
printf("请输入出版日期(年 月 日):\n");
scanf("%d %d %d",&book.date.year, &book.date.month, &book.date.day);
printf("请输入出版商:\n");
scanf("%s",book.publisher);
return book;
}
此函数的工作流程是这样的:
1. 你创建了一个名为 b1 的 Book 结构体实例,但它的所有字段都是空的。
2. 然后你调用 getInput(b1) 函数,将 b1 作为参数传递。 getInput() 函数通过键盘输入接收书的详细信息,并将这些信息存储在 book 结构体中(它是传入的 b1 )。
3. 函数返回填充了数据的 book ,并将其赋值给 b1 。这样, b1 就包含了用户输入的书籍信息。
关于你的另一个问题:在这个例子中, getInput 不是一个地址。它是一个函数,可以接受一个 Book 类型的参数,并返回一个 Book 类型的结果。在C语言中,函数名确实可以视为函数体的地址,但在此上下文中,我们更关心的是它作为一个功能的实现,而不是它的内存地址。
希望这个解答对你有所帮助。如果还有其他问题,欢迎继续提问! `getInput` 是一个自定义函数,它用于获取用户输入并将输入的值赋给结构体 `b1`。这个函数可能在代码中没有直接给出,但是根据代码的上下文,我们可以推测它的作用。
通常情况下,自定义函数是由程序员编写的,用于实现特定的功能。在这段代码中,`getInput` 函数可能会包含一些输入操作,用来向用户询问与书籍相关的信息,并将这些信息存储到结构体 `b1` 中。
虽然在给出的代码片段中没有提供 `getInput` 函数的实现,但是假设这个函数在其他位置被定义了,可能类似如下的形式:
struct Book getInput(struct Book b) {
// 这里可以加入相关的输入操作,向用户询问并获取信息
// 然后将获取的信息赋值给结构体 b
return b;
}
函数原型可以类似于上述形式。它接受一个结构体作为参数,并返回一个结构体。在这个例子中,参数是结构体 `b1`,它表示空的结构体变量。函数会获取用户输入的值,并将这些值赋给结构体 `b1`,然后返回更新后的结构体。
这样,在 `b1=getInput(b1)` 这一行代码执行时,函数 `getInput` 将会被调用,用户会被要求输入与书籍相关的信息,并将输入的值赋给结构体 `b1`。最终,结构体 `b1` 中存储了用户输入的数据。
希望这样的解释能够帮助你理解代码中的 `getInput` 函数的作用。如果有任何其他问题,请随时提问。
求最佳答案{:10_254:} sfqxx 发表于 2023-6-22 22:48
`getInput` 是一个自定义函数,它用于获取用户输入并将输入的值赋给结构体 `b1`。这个函数可能在代码中没有 ...
struct Book getInput(struct Book b) {
// 这里可以加入相关的输入操作,向用户询问并获取信息
// 然后将获取的信息赋值给结构体 b
return b;
}
不好意思呀,我函数的知识快忘记了,这个return b有什么用呢 是将这个函数最后运算得出的数值给b吗 学不死就死里xue 发表于 2023-6-23 20:46
struct Book getInput(struct Book b) {
// 这里可以加入相关的输入操作,向用户询问并获取信息
...
是的,`return b;` 这行代码的作用是将结构体 `b` 的值返回给函数调用者。在这个函数中,将结构体 `b` 作为参数传递进来并修改了它的值,最后通过 `return` 关键字将修改后的结构体 `b` 返回给函数调用者,以便下一步使用。
可以想象,在程序的其他地方,我们可能会这样使用这个函数:
struct Book myBook;
myBook = getInput(myBook);
上面的代码中,`myBook` 是一个 `Book` 结构体类型的变量,我们通过将其作为参数传递给 `getInput()` 函数,并让该函数返回值再次赋值给 `myBook` 变量,从而更新了 `myBook` 的值。
如果我的回答对您有帮助的话,不妨动动发财的小手给这个帖子评分->https://fishc.com.cn/thread-229812-1-1.html
求5荣誉5鱼币3贡献{:10_254:},谢谢
页:
[1]