안녕하십니까, 저는 51 행에 경고 메시지가 나타납니다. 형식은 'char *'유형을 지정하지만 인수는 'char'유형입니다. 매우 힘든 시간이 오류를 수정하는보고는. 또한, 내 프로그램은 그것을 달성하기 위해 어떻게 조직을 chane 수 있습니다. 내 출력 파일에 새 정렬 된 데이터를 인쇄하려면 실패? 당신의 fprintf
당신이에서'char *'유형이지만 'char'유형의 인자가 있습니다. 데이터가 파일에 인쇄되지 않습니다.
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <string.h>
4 #include <limits.h>
5
6 int main(void) {
7 const int N=200;
8 char name[N], symbol[N];
9 char printed[N];
10 int atomicNumber[N], n, i, p, j, min;
11 double atomicWeight[N];
12 FILE *fi;
13 FILE *fo;
14
15 fi=fopen("Lab6Elements.txt", "r");
16 if(fi==NULL) {
17 printf("Error opening file.\n");
18 return EXIT_FAILURE;
19 }
20 while(1){
21 n=0;
22 if(EOF == fscanf(fi,"%s%s%d%lf", &name[n], &symbol[n], &atomicNumber[n], &atomicWeight[n])) break;
23
24 printed[n]=0;
25 n++;
26 }
27
28 fo=fopen("OutputData.txt", "w");
29 fprintf(fo, "\n%-15s%4s%5s%10s\n", "Element","Symb","No.","Weight");
30 for(i = 0; i < n; i++){
31 min = INT_MAX;
32
33 for(j = 0; j < n; j++){
34
35 if(!printed[j] && atomicNumber[j]<min){
36 min = atomicNumber[j];
37 p = j;
38
39 }
40
41 fprintf(fo,"%-15s%-4s%5d%10.4lf\n", name[p], symbol[p], atomicNumber[p], atomicWeight[p]);
42
43 printed[p] = 1;
44 }
45
46 }
47 return EXIT_SUCCESS;
48 }
프로그램에 줄 번호가 포함되어 있습니다 ... – StoryTeller
다른 코드 대신 오류가 발생했을 때 컴파일 한 코드를 게시 할 수 있습니다 ... – Lundin
오타를해서 죄송합니다 –