向结构体数组输入数据出错 不知道错在哪解决方案
向结构体数组输入数据出错 不知道错在哪
#include<stdio.h>
#include<string.h>
//#include<stdlib.h>
#include <windows.h>
//#define LINE printf("-------------------------------------------\n")
#define pause system("pause")
//#define ADR(name) "C:\Documents and Settings\fhg\桌面\C++系统缓冲文件\name"
//#include<malloc.h>
typedef int ZS;
typedef long CZ;
typedef float FD;
typedef char ZF;
#define SS struct student
SS{
CZ num;
ZF name[20];
FD sco[3];
}s[5];
void main()
{
ZS i,j;
for(i=0;i<5;i++)
{
scanf("%ld%s",&s[i].num,&s[i].name);//用s[i].name也出错
for(j=0;j<3;j++)
scanf("%f",&s[i].sco[j]);
}
}
如输入 10 abc 10 10 10 按回车就出现错误,VC++6.0。XP系统
------解决方案--------------------
%lf试试?
------解决方案--------------------
void main()
{
ZS i,j;
for(i=0;i<5;i++)
{
scanf("%ld%s",&s[i].num,s[i].name);
for(j=0;j<3;j++)
scanf("%f",&(s[i].sco[j]));
}
}
------解决方案--------------------
#include<stdio.h>
#include<string.h>
//#include<stdlib.h>
#include <windows.h>
//#define LINE printf("-------------------------------------------\n")
#define pause system("pause")
//#define ADR(name) "C:\Documents and Settings\fhg\桌面\C++系统缓冲文件\name"
//#include<malloc.h>
typedef int ZS;
typedef long CZ;
typedef float FD;
typedef char ZF;
#define SS struct student
SS{
CZ num;
ZF name[20];
FD sco[3];
}s[5];
void main()
{
ZS i,j;
for(i=0;i<5;i++)
{
scanf("%ld%s",&s[i].num,&s[i].name);//用s[i].name也出错
for(j=0;j<3;j++)
scanf("%f",&s[i].sco[j]);
}
}
如输入 10 abc 10 10 10 按回车就出现错误,VC++6.0。XP系统
------解决方案--------------------
%lf试试?
------解决方案--------------------
void main()
{
ZS i,j;
for(i=0;i<5;i++)
{
scanf("%ld%s",&s[i].num,s[i].name);
for(j=0;j<3;j++)
scanf("%f",&(s[i].sco[j]));
}
}
------解决方案--------------------
- C/C++ code
#include<stdio.h> #include<string.h> //#include<stdlib.h> //#define LINE printf("-------------------------------------------\n") #include <Windows.h> #define pause system("pause") //#define ADR(name) "C:\Documents and Settings\fhg\桌面\C++系统缓冲文件\name" //#include<malloc.h> typedef int ZS; typedef long CZ; typedef float FD; typedef char ZF; #define SS struct student SS{ CZ num; ZF name[20]; FD sco[3]; }s[5]; void main() { ZS i,j; for(i=0;i<5;i++) { //printf("input num and name: \n"); scanf("%ld%s",&s[i].num,s[i].name);//用s[i].name也出错 //printf(" %d->num is %ld; name is %s\n", i, s[i].num, s[i].name); for(j=0;j<3;j++) { // printf("input the sco: \n"); scanf("%f",&s[i].sco[j]); // printf("%d[%d]->sco is :%f\n", i, j, s[i].sco[j]); } } }