Answer to Question #42881 in C for Mpendulo

Question #42881
Q4) (30 pts.) Assume that you have two files given : answer.txt and key.txt files. answer.txt file includes student number (int) and the answers of the student. key.txt file includes the answer key for 100 questions.
Write a complete C program that reads the exam answers of the student from the file answer.txt, and then compare these answers with the correct answers in key.txt. Finally display the number of correct answers for the student.
Hint : You may use a string (char [ ] ) to store the answers.
answer.txt :
9999 abdaa...
key.txt:
abbacaca...

The program output may be displayed as follows for 5 questions:
=======================================
stno : 9999 correct answers : 55
=======================================
1
Expert's answer
2014-06-02T09:51:12-0400
#include <stdio.h>
int main()
{
FILE *f_answer = fopen("answer.txt","r");
FILE *f_key = fopen("key.txt", "r");
char l_answer[256];
char l_key[256];
char s_id[256];
int pos = 0;
int corr_ans = 0;
int i;
fgets(l_answer, sizeof(l_answer), f_answer);
fgets(l_key, sizeof(l_key), f_key);
// parses student number
while(l_answer[pos] != ' ')
{
s_id[pos] = l_answer[i];
pos++;
}
// counts the number of correct answers
for(i = 0; i < 100; i++)
{
if (l_answer[pos + 1 + i] == l_key[i])
{
corr_ans++;
}
}
printf("=======================================\n");
printf("stno : ");
printf("s_id");
printf(" correct answers : ");
printf("%d\n", corr_ans);
printf("=======================================");
return 0;
}

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
APPROVED BY CLIENTS