33,311
社区成员
发帖
与我相关
我的任务
分享
#include"stdafx.h"
#include"stdio.h"
#include"stdlib.h"
#define listinitsize 100
#define listincrement 10
#define OVERFLOW -1
struct student
{
int no[6];
char name[6];
char sex[6];
int age[6];
};
struct sqlist
{
student*elem;
int length;
int listsize;
};
void initlist(sqlist&l)
{ l.elem=(student*)malloc(listinitsize*sizeof(student));
if(!l.elem)exit(OVERFLOW);
l.length=1;
l.listsize=listinitsize;
}
void inputlist(sqlist&l,int n)
{
int a;
for(a=0;a<n;a++);
{
printf("请输入学生学号");
scanf("%d",l.elem[a].no);
printf("请输入学生姓名");
scanf("%s",l.elem[a].name);
printf("请输入学生性别");
scanf("%s",l.elem[a].sex);
printf("请输入学生年龄");
scanf("%d",l.elem[a].age);
l.length++;
}
}
void sqlistsearch(sqlist&l)
{
int a=0;
int searchno[10];
printf("请输入要查找的学号");
scanf("%s",searchno);
for(a=0;a<l.length;a++)
{
if (searchno==l.elem[a].no)
printf("%d","%s","%s","%d",l.elem[a].no,l.elem[a].name,l.elem[a].sex,l.elem[a].age);
break;
if(a=l.length)
printf("查无此人");
}
}
void main()
{
sqlist L;
initlist(L);
inputlist(L,6);
sqlistsearch(L);
}
//#include"stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define listinitsize 100
#define listincrement 10
#define OVERFLOW -1
struct student
{
char no[12]; /*问题1: 定义成字符数组*/
char name[16];
char sex[12];
int age; /* 问题2: 定义成变量*/
};
struct sqlist
{
student*elem;
int length;
int listsize;
};
void initlist(sqlist &l)
{
l.elem=(student*)malloc(listinitsize*sizeof(student));
if(!l.elem)
exit(OVERFLOW);
l.length = 1;
l.listsize = listinitsize;
}
void inputlist(sqlist &l, int n)
{
int i;
for(i=0;i<n;i++) /*问题3: 去掉分号*/
{
printf("请输入学生学号");
scanf("%s", l.elem[i].no);
printf("请输入学生姓名");
scanf("%s", l.elem[i].name);
printf("请输入学生性别");
scanf("%s", l.elem[i].sex);
printf("请输入学生年龄");
scanf("%d", &l.elem[i].age);
l.length++;
}
}
void sqlistsearch(sqlist&l)
{
int i;
char searchno[10];
printf("请输入要查找的学号");
scanf("%s",searchno);
for(i=0;i < l.length;i++)
{
if (strcmp(searchno, l.elem[i].no) == 0) {
printf("%s, %s, %s, %d\n",l.elem[i].no,l.elem[i].name,l.elem[i].sex,l.elem[i].age);
break;
}
}
if(i >=l.length)
printf("查无此人");
}
int main()
{
sqlist L;
initlist(L);
inputlist(L, 6);
sqlistsearch(L);
return 0;
}
参考一下吧
问题挺多,建议基础知识还是学好了。