コード例 #1
0
 ////////////////////从文件中读学生信息
 void readinformationfile()
 {
 	FILE *fp;
 	student *p;
 	fp=fopen("student.txt","r");
 	if(!fp)
 	{
 		printf("文件不存在\n");
 		return;
 	}
 	p=mallocnode();
 	while(fscanf(fp,"%s%s%s%f%f%f",p->studentnumber,p->studentname,p->classname,&p->mark1,&p->mark2,&p->mark3)>0)
    {
    	insertonenode(p);
    	p=mallocnode();
    }
    fclose(fp);
 } 
コード例 #2
0
 //////////////////////显示菜单,根据用户输入完成相应的功能
 void displaymenu()
 {
 	student *p;
    system("color 5e");
   /* HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
    SetConsoleTextAttribute(handle, FOREGROUND_INTENSITY |FOREGROUND_RED | FOREGROUND_GREEN);*/
 	printf("                    ********请选择相应的功能********\n");
	printf("                    1  显示所有学生信息\n");
	printf("                    2  按姓名查询学生信息\n");
	printf("                    3  按学号查询学生信息\n");
	printf("                    4  增加学生信息\n");
	printf("                    5  删除学生信息\n");
	printf("                    6  按姓名修改学生成绩\n");
	printf("                    7  按学号修改学生成绩\n");
	printf("                    8  保存所有学生信息\n");
	printf("                    9  显示优秀和不及格学生成绩\n");
	printf("                    10 排序结果并输出成绩\n");
	printf("                    11 退出程序\n");
	printf("                    12 修改密码\n"); 
	scanf("%d",&choose);//用户选择
	switch(choose)
	{
		case 1:
			outputinformation();
		break;	
		case 2:
		     displayinformationbystudentname();
        break;
        case 3:
        	displayinformationbystudentnumber();
       	break;
       	case 4:
       		p=mallocnode();
       		getinformation(p);
       		insertonenode(p);
    	break;
		case 5:
		    deletenodebystudentnumber();
		break;
		case 6:
		    changemarkbystudentname();
		break;
		case 7:
		    changemarkbystudentnumber();
		break;	 
		case 8:
			savelinktofile();
		break;
		case 9:
			displaymarksegment();
		break;
		case 10:
			compositorbytotalmark();
		break;
		case 11:
			savelinktofile();
		free(headlink);
		return;
		case 12:
			changepassword();
		break;
		default: 
		break;
	} 
    displaymenu();//递归调用 
 } 
コード例 #3
0
ファイル: insert.c プロジェクト: franzu/exercicio2.1
void main(){
	int menu=0,s,key;
	char a;
	printf("--Programa de ARVORE BINARIA DE BUSCA Inicializado--");
	printf("\nMENU:");
	printf("\n1.Inserir elemento.");
	printf("\n2.Deletar elemento.");
	printf("\n3.Buscar elemento.");
	printf("\n4.Impressao em posordem.");
	printf("\n5.Impressao em ordem.");
	printf("\n6.Impressao em preordem.");
	printf("\n7.Impressao em colchetes rotulados.");
	printf("\n8.Sair.");	
	printf("\nEscolha alguma das opcoes com seu respectivo numero:");
	while(menu!=8){
		scanf("%d",&menu);
			switch(menu){
				case 1:
						printf("Quantos elementos deseja adicionar?  ");
						int n,i;
						scanf("%d",&n);
						for(i=1;i<=n;i++){
						struct tree *node=mallocnode();
						printf("Entre a chave do no %d:",i);
						scanf("%d",&node->key);
						if(root==NULL)root=node;
						else insert(node,node->key);
						}
					break;
				
				case 2:
						printf("Entre a chave a ser deletada:\n");
						scanf("%d",&key);
						del(root,key);
						break;
					
				case 3:					
					printf("Entre a chave a ser buscada:\n");
					scanf("%d",&s);
					if(root==NULL)printf("Arvore esta vazia! Adicione elementos.");
					if(search(root,s)==0)printf("O elemento nao se encontra na arvore!");
					if(search(root,s)==1)printf("O elemento esta na arvore!");
					break;
				
				case 4:
					postorder(root);
					break;
				
				case 5:					
					inorder(root);
					break;
					
				case 6:					
					preorder(root);
					break;
				
				case 7:
					brcktng(root);
					break;
				
				case 8:
					printf("Tchau.");
					return;
				
				default:
					printf("Entrada errada, escolha dentre os numeros!!");
					break;
			}
		printf("\nEscolha novamente:");
	}
	return;
}