Chương trình sinh số ngẫu nhiên 0-100, tính tổng, lưu kết quả vào file. Mỗi lần chạy cho kết quả khác nhau.
Logic tính tổng số ngẫu nhiên
for(i = 0; i <= 99; i++) {
num[i] = rand() % 100 + 1; // 1-100
sum += num[i];
}
Mở file ghi, dùng fprintf ghi tổng vào file.
fprintf(fptr, "Tổng mảng: %d\n", sum);
Chương trình hoàn chỉnh
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX 100
int main(void) {
srand(time(0)); // Seed theo thời gian
int i, sum = 0, num[MAX];
FILE *fptr;
// Sinh 100 số ngẫu nhiên và tính tổng
for(i = 0; i <= 99; i++) {
num[i] = rand() % 100 + 1;
sum += num[i];
}
// Ghi tổng vào file
fptr = fopen("numbers.txt", "w");
if (fptr == NULL) {
printf("Lỗi mở file!\n");
exit(1);
}
fprintf(fptr, "Tổng mảng: %d\n", sum);
fclose(fptr);
return 0;
}
Kết quả chạy
Chạy 1: Tổng mảng: 5224
Chạy 2: Tổng mảng: 5555
Lưu ý: File numbers.txt được tạo trong thư mục hiện tại chứa kết quả.