这是一个工作代码,可以从covid数据[]中打印静态信息,运行它以便您可以理解,我想将此代码转换为不从此covid数据[]中读取,而是从我充满数据的csv文件中读取就像在covid数据中一样[] 我不知道该怎么做,如果可以的话,请复制工作代码,非常感谢!
此数组covid数据[]是csv文件的一部分,因此您可以理解。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct {
unsigned int SNo;
char ObservationDate[11];
char Province_State[50];
char Country_Region[50];
char Last_Update[50];
float Confirmed;
float Deaths;
float Recovered;
}covid;
void printGraph(int number) {
int i;
for (i = 0; i < number; i++) {
printf("*");
}
printf("\n");
}
void printDistribution(covid data[], int datalength, char country[50], char date[11]) {
int i;
for (i = 0; i < datalength; i++) {
if (strcmp(country, data[i].Country_Region) == 0) {
if (strcmp(date, data[i].ObservationDate) == 0) {
printf("Total Cases: %f", data[i].Confirmed);
printGraph(data[i].Confirmed);
printf("Total Deaths: %f", data[i].Deaths);
printGraph(data[i].Deaths);
printf("Total Recovered: %f", data[i].Recovered);
printGraph(data[i].Recovered);
float fatalityRate = (data[i].Deaths / data[i].Confirmed) * 100;
float recoveryRate = (data[i].Recovered / data[i].Confirmed) * 100;
printf("Fatality Rate: %f%%\n", fatalityRate);
printf("Recovery Rate: %f%%\n", recoveryRate);
}
}
}
}
int main(int argc, char** argv) {
covid data[] = {
{1, "1/22/2020", "Anhui", "Mainland China", "1/22/2020 5:00:00 PM", 1, 0 , 0},
{2, "1/22/2020", "Beijing", "Mainland China", "1/22/2020 5:00:00 PM", 14, 0 , 0},
{3, "1/22/2020", "Fujian", "Mainland China", "1/22/2020 5:00:00 PM", 6, 0 , 0},
{4, "1/22/2020", "Washington", "US", "1/22/2020 5:00:00 PM", 1, 0 , 0},
{5, "1/22/2020", "Beirut", "Lebanon", "1/22/2020 5:00:00 PM", 1, 0 , 0},
{6, "2/22/2020", "Anhui", "Mainland China", "2020-02-22T07:43:03", 989, 6 , 597},
{7, "2/22/2020", "Beijing", "Mainland China", "1/22/2020 5:00:00 PM", 399, 4 , 178},
{8, "2/22/2020", "Fujian", "Mainland China", "1/22/2020 5:00:00 PM", 293, 1 , 162},
{9, "2/22/2020", "Washington", "US", "1/22/2020 5:00:00 PM", 150, 10 , 96},
{10, "2/13/2020", "Beirut", "Lebanon", "1/22/2020 5:00:00 PM", 50, 10 , 15},
{11, "3/13/2020", "Anhui", "Mainland China", "1/22/2020 5:00:00 PM", 1500, 20 , 785},
{12, "3/13/2020", "Beijing", "Mainland China", "1/22/2020 5:00:00 PM", 450, 50 , 300},
{13, "3/13/2020", "Fujian", "Mainland China", "1/22/2020 5:00:00 PM", 6, 0 , 0},
{14, "3/13/2020", "Washington", "US", "1/22/2020 5:00:00 PM", 1, 0 , 0},
{15, "3/13/2020", "Beirut", "Lebanon", "1/22/2020 5:00:00 PM", 1, 0 , 0},
{16, "4/15/2020", "Anhui", "Mainland China", "2020-02-22T07:43:03", 989, 6 , 597},
{17, "4/15/2020", "Beijing", "Mainland China", "1/22/2020 5:00:00 PM", 399, 4 , 178},
{18, "4/15/2020", "Fujian", "Mainland China", "1/22/2020 5:00:00 PM", 293, 1 , 162},
{19, "4/15/2020", "Washington", "US", "1/22/2020 5:00:00 PM", 150, 10 , 96},
{20, "4/15/2020", "Beirut", "Lebanon", "1/22/2020 5:00:00 PM", 50, 10 , 15},
};
char country[] = "US";
char date[] = "4/15/2020";
printDistribution(data, 20, country, date);
return 0;
}