69,373
社区成员
发帖
与我相关
我的任务
分享
void main()
{
int i,j;
void input();
input();// 定义为外部变量,这里调用input是否将数据写入了并可为下个函数调用,
printf("output the dates:\n");//整个程序编译不报错,但程序不运行,定住了
for(i=0;i <N;i++)//还有请问这用指针怎么写
{
printf("%d %s ",stu[i].ID,stu[i].name);
for(j=0;j <M;j++)
printf("%d ", stu[i].score[j]);
}
}
void input()
{
int i,j;
printf("input the dates:\n");
for(i=0;i <N;i++)
{
scanf("%d%s",&stu[i].ID,stu[i].name);//这里的名字是否需要加取地址符
for(j=0;j <M;j++)
scanf("%d ", &stu[i].score[j]);
}
}
#include "stdio.h"//程序是输入几个学生数据并输出!
#define N 2
#define M 3
struct student //定义一个学生类型的结构体变量
{
int ID;//学号
char name[10];
int score[3];//三科成绩
};
struct student stu[N];
void main()
{
int i,j;
void input();
input();// 定义为外部变量,这里调用input是否将数据写入了并可为下个函数调用, 写入了,可以调用
printf("output the dates:\n");//整个程序编译不报错,但程序不运行,定住了 输入格式不正确
for(i=0;i <N;i++)//还有请问这用指针怎么写
{
printf("%d %s ",(stu+i)->ID,(stu+i)->name);// printf("%d %s ",stu[i].ID,stu[i].name);
for(j=0;j <M;j++)
printf("%d ",(stu+i)->score[j]); // printf("%d ", stu[i].score[j]);
}
}
void input()
{
int i,j;
printf("input the dates:\n");
for(i=0;i <N;i++)
{
scanf("%d%s",&stu[i].ID,stu[i].name);//这里的名字是否需要加取地址符 不需要
for(j=0;j <M-1;j++)
scanf("%d ", &stu[i].score[j]);
scanf("%d",&stu[i].score[j]);
}
}