#include<string.h>
main()
{
int a=0,b=0,c=0,d=0
char chr='O'
char t[]="noEnd"
//char *m[]={"20013011001杜永宁","20013011002王传华","20013011003殷泳","20013011004杨柳青"}
printf("........... A 开始点名.........end 结束点名...........\n")
printf("........... B 显示显示所有同学点名情况 ...........\n")
printf("........... C 保存点名 ...........\n")
printf("........... D 退出点名系统 ...........\n")
FILE *ft
//fp=fopen("myfile.dat","r")
ft=fopen("baochun.txt","w")
// fscanf(fp,"%s,%s,%s,%s",m[0],m[1],m[2],m[3])
while(chr!='x')
{
scanf("%c",&chr)
switch(chr)
{
case 'A':
while(strcmp(t,"over")!=0)
{
if(a+b+c+d==12) {a=b=c=d=0printf ("清零!\n")}
scanf("%s",&t)
if(strcmp(t,"20013011001杜永宁")==0)
{
a++
if(a<=3) printf("杜永宁已被点%d次\n",a)
if(a>3)
{ a=3
printf("杜永宁已被点完三次\n")
}
}
else if(strcmp(t,"20013011002王传华")==0) {
b++
if(b<=3) printf("王传华已被点%d次\n",b)
if(b>3)
{b=3
printf("王传华已被点完三次\n")}
}
else if(strcmp(t,"20013011003殷泳")==0){
c++
if(c<=3) printf("殷泳已被点%d次\n",c)
if(c>3)
{c=3
printf("殷泳已被点完三次\n")
}
}
else if(strcmp(t,"20013011004杨柳青")==0) {
d++
if(d<=3) printf("杨柳青已被点%d次\n",d)
if(d>3)
{d=3
printf("杨柳青已被点完三次\n")
}
}
}break
case 'B': {
printf("20013011001杜永宁已被点过名的次数为%d\n20013011002王传华已被点过名的次数为%d\ n20013011003殷泳已被点过名的次数为%d\n20013011004杨柳青已被点过名的次数为%d\n",a,b,c,d)}break
case 'C':{ printf("保存成功\n")
fprintf(ft,"20013011001 杜永宁 已被点过名的次数为%d\n,20013011002 王传华已被点过名的次数为%d\n,20013011003 殷泳 已被点过名的次数为%d\n,20013011004 杨柳青已被点过名的次数为%d\n",a,b,c,d)}break
default:break
}
}//while(chr!='x')
}
#include <stdio.h>#include <stdlib.h>
#include <time.h>
typedef struct Student
{
char name[20]
bool IsRead
}Student
int main()
{
int i
int select
int mark=1
/袜行/下面中你还可以加入一些学生,记得初始化的IsRead都是false
Student student[]=
{
{"张三",false},
{"李四",false},
{"王五",false},
{"刘六",false},
{"赵七",false}
}
printf("欢迎进入点门系统,以下是全班铅好悉的花名册:\n")
for (i=0i<sizeof(student)/sizeof(Student)i++)
printf("%s ",student[i].name)
printf("\n")
do
{
printf("请选择:\n1.点名\n2.显示没有点到的学生名字\n3.退出点名系统\n")
scanf("%d",&select)
system("cls")//如果是Linux系统,把cls改成clear。如果是其他系统请把这行注释掉,清频
if(1==select)
{
mark = 1
while (1)
{
for(i=0i<sizeof(student)/sizeof(Student)i++)
mark=mark*(student[i].IsRead? 1:0)
if(mark)
{
printf("你已经把全班点了个遍\n")
break
}
srand(time(NULL))
i = rand()%(sizeof(student)/sizeof(Student))
if(!student[i].IsRead)
{
printf("点名:%s\n",student[i].name)
student[i].IsRead = true
break
}
}
}
else if (2==select)
{
for(i=0i<sizeof(student)/sizeof(Student)i++)
{
if(!student[i].IsRead)
printf("%s ",student[i].name)
}
printf("\n")
}
else if(3==select)
{
printf("谢谢使用\n")
return 0
}
}while(true)
return 0
}
这可是我一个字一个字的打出来的,专门为你槐乎写的!~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)