#includestdiohint main int n=0; scanfd&n; char name100; char sno100; int grade; char name_max = NULL; char name_min = NULL; char sno_max = NULL; char sno_min = NULL; int
在输出部分,你没有使用正确的格式化字符串来打印字符串。在printf函数中,应将%s用作字符串的格式化指示符,并且需要用逗号将字符串参数与其他参数分隔开。
修改后的代码如下:
#include<stdio.h>
int main()
{
int n=0;
scanf("%d",&n);
char name[100];
char sno[100];
int grade;
char *name_max = NULL;
char *name_min = NULL;
char *sno_max = NULL;
char *sno_min = NULL;
int max=0;
int min=0;
for(;n>0;n--)
{
scanf("%s %s %d",name,sno,&grade);
if(max==0)
max=grade;
if(min==0)
min=grade;
if(grade>max)
{
max=grade;
sno_max=sno;
name_max=name;
}
if(grade<min)
{
min=grade;
sno_min=sno;
name_min=name;
}
}
printf("%s %s\n",name_max,sno_max);
printf("%s %s",name_min,sno_min);
return 0;
}
请注意,输出的每一行末尾都有一个换行符(\n),以确保输出格式正确
原文地址: https://www.cveoy.top/t/topic/ijbP 著作权归作者所有。请勿转载和采集!