printf("%s of %s",randomRank(),randomColor())
应该为
printf("%c of %s",randomRank(),randomColor())
因为没有genlib.h文件,不好判断还有那里出了问题.
#include "stdio.h"typedef struct Student
{
char name[32]
int num
int n
Student *next
}
Student *head=NULL
Student *creat()
{
Student *p1,*p2
p1=(Student *)malloc(sizeof(Student))
head=p1
p2=p1
printf("请输入你要添加的学生姓名,以0结束:\n")
scanf("%s", p1->name)
if (p1->name[0]!='0')
{
printf("请输入此学生的学号:\n")
scanf("%d", &p1->num)
p1->n=0
}
else
{
free(p1)p2=NULLp2->next=NULLhead=NULL
return head
}
while (p1->name[0]!='0')
{
p2=p1
p1=p1->next
p1=(Student *)malloc(sizeof(Student))
printf("请输入你要添加的学生姓名,以0结束:\n")
scanf("%s", p1->name)
if (p1->name[0]!='0')
{
printf("请输入此学生的学号:\n")
scanf("%d", p1->num)
p1->n=0
}
p2->next=p1
}
free(p1)
p2->next=NULL
return head
}
void Count(Student *head,int num)
{
int c
if (head==NULL)
{
printf("对不起没有创建\n")
}
if (head->num==num)
{
printf("找到他的信息:\n")
printf("姓名:%s\n", head->name)
printf("学号:%d", head->num)
printf("曾你参加跑步%d次跑步\n", head->n)
printf("是否签到:1->是\t2->否\n")
scanf("%c", &c)
if (c==1)
{
head->n=head->n+1
printf("添加成功!\n")
printf("参加了%d跑步\n"", head->n)
}
if (c==2)
{
return
}
}
while (head->num!=num&&head->next!=NULL)
{
head=head->next
if (head->num==num)
{
printf("找到他的信息:\n")
printf("姓名:%s\n", head->name)
printf("学号:%d", head->num)
printf("曾你参加跑步%d次跑步\n", head->n)
printf("是否签到:1->是\t2->否\n")
scanf("%c", &c)
if (c==1)
{
head->n=head->n+1
printf("添加成功!\n")
printf("参加了%d跑步\n"", head->n)
}
if (c==2)
{
return
}
}
}
}
void Run(Student*head ,int num)
{
if (head==NULL)
{
printf("对不起没有创建\n")
}
if (head->num==num)
{
printf("找到他的信息:\n")
printf("姓名:%s\n", head->name)
printf("学号:%d", head->num)
printf("签到次数:%d", head->n)
}
while (head->num!=num&&head->next!=NULL)
{
head=head->next
if (head->num==num)
{
printf("找到他的信息:\n")
printf("姓名:%s\n", head->name)
printf("学号:%d", head->num)
printf("签到次数:%d", head->n)
return
}
else
printf("对不起没有他的数据\n")
}
}
void menu()
{
int q
while (1)
{
printf("----------学生签到系统------------\n")
printf("1->创建学生\t2->查找学生\n")
printf("3->进行签到\t4->退出系统\n")
printf("请输入你的选择:"
scanf("%c", &q)
switch(q)
{
case 1:
{
head=creat()
getchar()
printf("创建成功!\n")
getchar()
clrscr()
}
break
case 2:
{
int m=0
printf("请输入你要查询人的学号:")
scanf("%d", &m)
Run(head,m)
getchar()
getchar()
clrscr()
}
break
case 3:
{
int m=0
printf("请输入你要查询人的学号:")
scanf("%d", &m)
Run(head,m)
getchar()
getchar()
clrscr()
}
break
case 4:
{
return
}
break
}
}
}
int main(int argc, char* argv[])
{
menu()
printf("Hello World!\n")
return 0
}