نقل قول نوشته شده توسط pixcel مشاهده تاپیک
سلام خسته نباشید
چطوری یک رشته تصادفی (حروف+ اعداد) با طول ۱۰ کاراکتر بسازیم
فقط نمیخوام رشته رو چاپ کنه ، میخوام بریزه داخل متغیر
میخوام به زبان C باشه.
خیلی هم سایت عالی دارید . دمتون گرم
برای تولید اعداد تصادفی از srand و rand استفاده میشه که برای توضیحاتشون به این تاپیک ها مراجعه کنید :
فرق srand با rand در چیست؟
طرز استفاده از تابع rand

چون آخر رشته با کاراکتر NULL مشخص میشه، برای رشته 10 کاراکتری به آرایه 11 کاراکتری نیاز داریم.
اول با srand یک seed تصادفی انتخاب می کنیم که با timer بدست میاد.
بعد داخل حلقه 10 بار از بین 26 حرف انگلیسی یا 10 رقم یکی رو به رشته اضافه می کنیم.
و نهایتا آخر رشته رو با 0 (NULL) مشخص می کنیم.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
char s[11];
int i;
srand(time(0));
for (i = 0; i < 10;i++)
s[i] = (rand() % 2 == 0) ? (rand() % 26 + 65) : (rand() % 10 + 48);
s[10] = 0;
printf(s);
return 0;
}