关于结构体中定义float数据类型的问题
请看以下两个程序
程序一:结构体中定义了int数据类型,运行没有错误
#include <stdio.h>
#define N 2
struct xueyuan
{
    int xh;
    char name[10];
    int cj[3];
}arr[N],*ptr;
void main()
{
    int i,j;
    ptr=arr;
    for(i=0;i<1;i++,ptr++)
    {
    printf("input xuehao:");
        scanf("%d",&ptr->xh);
    printf("name:");
    scanf("%s",ptr->name);
    printf("input chengji:\n");
        for(j=0;j<3;j++)
        {
        printf("%d:",j+1);
        scanf("%d",ptr->cj+j);
    }
    }
    printf("\n%d,%s,%d,%d,%d\n",arr[0].xh,arr[0].name,arr[0].cj[0],arr[0].cj[1],arr[0].cj[2]);
}
程序二:在结构体中定义float类型,程序运行到输入float数据便出现程序中止
#include <stdio.h>
#define N 2
struct xueyuan
{
    int xh;
    char name[10];
    float cj[3];
}arr[N],*ptr;
void main()
{
    int i,j;
    ptr=arr;
    for(i=0;i<1;i++,ptr++)
    {
    printf("input xuehao:");
        scanf("%d",&ptr->xh);
    printf("name:");
    scanf("%s",ptr->name);
    printf("input chengji:\n");
        for(j=0;j<3;j++)
        {
        printf("%d:",j+1);
        scanf("%f",ptr->cj+j);
    }
    }
    printf("\n%d,%s,%f,%f,%f\n",arr[0].xh,arr[0].name,arr[0].cj[0],arr[0].cj[1],arr[0].cj[2]);
}
[此贴子已经被作者于2007-8-21 22:32:56编辑过]



 
											





 
	    

 
	
 
											


 
										