Можно ли присвоить случайное значение (rand), полю символьному структуры, состоящему из N элементов? - C (СИ)
Формулировка задачи:
Здравствуйте, возник один вопросик.
Можно ли присвоить случайное значение (rand), полю символьному структуры, состоящему из N элементов? Примерное хотелось бы: создается структура, где есть только одно поле. Значения поля создаются автоматически.
Спасибо, что посмотрели)
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
#define N 4;
struct MASS
{ char a[3];
}buff;
struct MASS massiv[4];
main()
{ int i,j;char x[3];
for (i=0; i < 4; i++) {
massiv[i].a=rand()%26+97;//Вот в этом месте или в другом как можно сделать случайное присвоение значений?)
printf("%d ",massiv[i].a);
}
getch();
}Решение задачи: «Можно ли присвоить случайное значение (rand), полю символьному структуры, состоящему из N элементов?»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 4
#define MAX_A 3
struct MASS {
char a[MAX_A];
} massiv[N];
int main() {
int i,j;
for (i = 0; i < N; ++i) {
for (j = 0; j < MAX_A; ++j) {
massiv[i].a[j]=rand()%26+97;
printf("%d ",massiv[i].a[j]);
}
printf("\n");
}
system("pause");
}
Объяснение кода листинга программы
- Подключение необходимых библиотек:
для работы с выводом на экран, для работы со случайными числами, для работы со строками. - Определение размера массива и максимального размера строки в структуре.
- Создание массива структур типа MASS.
- Переменные i и j, используемые в циклах.
- В цикле заполняют поля массива структур случайными значениями от 97 до 122 (для ASCII).
- Вывод на экран заполненного массива.
- Ожидание нажатия клавиши для завершения программы.