在此程序片段中,我试图调用case_wise函数,但是尽管我在main函数中调用了该函数,但并未调用此函数,因此,在我创建错误的任何地方都可以吗?谢谢
struct country{
char country_name[30];
int active_cases;
int recovered_cases;
int dead_cases;
};
void cases_wise(struct country count[], int n );
int main(){
int i, n;
printf("***********WELCOME***********\n");
printf("Enter the number of countries: \n");
scanf("%d", &n);
struct country count[10];
for(i=0; i<n; i++){
printf("Enter the name ");
scanf("%s", &count[i].country_name);
printf("Enter the number of active cases ");
scanf("%d", &count[i].active_cases);
printf("Enter the number of recovered cases ");
scanf("%d", &count[i].recovered_cases);
printf("Enter the number of dead cases ");
scanf("%d", &count[i].dead_cases);
}
cases_wise(struct country count[], int n);
return 0;
}
答案 0 :(得分:2)
在您的主要帐户中:
<option value=""></option>
是原型。这不是一个电话。要调用该函数,请删除类型名称:
cases_wise(struct country count[], int n);
答案 1 :(得分:0)
第一个问题是Paul Ogilvie在您的代码中的答案。您的程序还有其他需要改进的地方:
scanf("%s", &count[i].country_name);
请勿将&
用于字符串,而添加%29s
以避免溢出:
scanf("%29s", count[i].country_name);
您的for循环还需要另一个条件i
:i < 10
,因为数组count
的大小为10。
for(i=0; i<n && i < 10; i++){
// your code
}