Главная /
Программирование на языке C в Microsoft Visual Studio 2010 /
Задана программа, позволяющая пользователю задать данные о студенте с клавиатуры: typedef struct { char fio[30]; int group; float average; } student; void Init(student*); int main(void) { student s, *st; int i; st = &s; Init(st); <Вывод данных на э
Задана программа, позволяющая пользователю задать данные о студенте с клавиатуры:
typedef struct {
char fio[30];
int group;
float average;
} student;
void Init(student*);
int main(void)
{
student s, *st;
int i;
st = &s;
Init(st);
<Вывод данных на экран>
return 0;
}
void Init(student *st)
{
printf("\nEnter name: ");
scanf("%s", st->fio);
printf("\nEnter group: ");
scanf("%d", &st->group);
printf("\nEnter average mark: ");
scanf("%f", &st->average);
}
Необходимо дополнить программу функцией вывода заданных о студенте данных на экран и вызовом этой функции в программе. Какой вариант описания и вызова функции не выполняет поставленную задачу?
вопрос
Правильный ответ:
функция:
void Print(student *st)
{
printf("\nName: %s", st->fio);
printf("\nGrouproup: %d", st->group);
printf("\nAverage mark: %.2f", st->average);
}
вызов:
Print(st);
функция:
void Print(student st)
{
printf("\nName: %s", st.fio);
printf("\nGrouproup: %d", st.group);
printf("\nAverage mark: %.2f", st.average);
}
вызов:
Print(st);
функция:
void Print(char *n, int i, float d)
{
printf("\nName: %s", n);
printf("\nGrouproup: %d", i);
printf("\nAverage mark: %.2f", d);
}
вызов:
Print(st.fio, st.group, st.average);
функция:
void Print(char *n, int i, float d)
{
printf("\nName: %s", n);
printf("\nGrouproup: %d", i);
printf("\nAverage mark: %.2f", d);
}
вызов:
Print(st->fio, st->group, st->average);
Сложность вопроса
82
Сложность курса: Программирование на языке C в Microsoft Visual Studio 2010
62
Оценить вопрос
Комментарии:
Аноним
спасибо за ответ
24 фев 2020
Аноним
Какой человек ищет вот эти ответы по интуит? Это же элементарно (я не ботан)
23 фев 2017
Другие ответы на вопросы из темы программирование интуит.
- # Функция average вычисляет среднее арифметическое заданных аргументов: #include <stdio.h> #include <stdarg.h> int average(int first, ... ); int main( void ) { int x; <Вызов фукнции average()>; return 0; } int average( int first, ... ) { int count = 0, sum = 0, i = first; va_list marker; va_start(marker, first); while( i != -1 ) { sum += i; count++; i = va_arg(marker, int); } va_end(marker); return( sum ? (sum / count) : 0 ); } В результете какого вызова функции average значение переменной x будет равно 2?
- # Какая программа содержит ошибку?
- # Какая программа верно вычисляет сумму элементов массива с помощью рекурсии?
- # Структурная схема какого оператора представлена ниже? [Большая Картинка]
- # В процессе выполнения приведенной программы возникает ошибка: #include <stdio.h> #include <stdlib.h> #define N 10 int main(void) { int i; int *arr; arr = (int *)calloc(N, sizeof(int)); if (!arr) { printf("\nERROR! Out of memory in calloc() function. Press any key: "); _getch(); exit(1); }; for (i=0; i<N+2; i++) { arr[i] = i+1; printf("arr[%d] = %d\n", i, arr[i]); } free(arr); return 0; } Каким образом можно изменить программу для ее корреткной работы?