|

楼主 |
发表于 2021-3-16 14:11:24
|
显示全部楼层
#include<stdio.h>
struct student
{
int xuehao;
char name[30];
float chengji;
}a, b;
int main()
{
printf("请输入第一个学生的学号、姓名和成绩:\n");
scanf_s("%d%s%f", &a.xuehao, a.name,30, &a.chengji); //name是字符串不用&
printf("请输入第二个学生的学号、姓名和成绩:\n");
scanf_s("%d%s%f", &b.xuehao, b.name,30, &b.chengji); //name是字符串不用&
if (a.chengji>b.chengji)
printf("%d\t%s\t%f\n",a.xuehao,a.name,a.chengji);
else if (a.chengji<b.chengji)
printf("%d\t%s\t%f\n",b.xuehao,b.name,b.chengji);
else
{
printf("%d\t%s\t%f\n", a.xuehao, a.name, a.chengji);
printf("%d\t%s\t%f\n", b.xuehao, b.name, b.chengji);
}
return 0;
}
/*#include <stdio.h>
struct student
{
int xuehao;
char name[30];
float chengji;
} a, b;
int main(void)
{
printf("请输入第一个学生的学号、姓名和成绩:");
scanf_s("%d%s%f", &a.xuehao, a.name, 30, &a.chengji); // scanf_s() 在读取字符串的时候,必须提供字符串存储空间长度参数
printf("请输入第二个学生的学号、姓名和成绩:");
scanf_s("%d%s%f", &b.xuehao, b.name, 30, &b.chengji); // scanf_s() 在读取字符串的时候,必须提供字符串存储空间长度参数
if (a.chengji > b.chengji) {
printf("%d\t%s\t%f\n", a.xuehao, a.name, a.chengji);
}
else if (a.chengji < b.chengji) {
printf("%d\t%s\t%f\n", b.xuehao, b.name, b.chengji);
}
else {
printf("%d\t%s\t%f\n", a.xuehao, a.name, a.chengji);
printf("%d\t%s\t%f\n", b.xuehao, b.name, b.chengji);
}
return 0;
}*/
scanf_s("%d%s%f", &a.xuehao, a.name, 30, &a.chengji);
scanf_s("%d,%s,%f", &a.xuehao, a.name, 30, &a.chengji);
scanf_s()l里面加“,”就出问题。 |
|