linux学生管理系统API,Linux +C+sqlite3 一个简单的学生管理系统

#include

#include

#include

#include

char *errmsg;

void insert_data(sqlite3 *db)

{

int number,age,score;

char name[20];

printf("input the number: ");

scanf("%d",&number);

getchar();

printf("input the name: ");

scanf("%s",name);

getchar();

printf("input the age: ");

scanf("%d",&age);

getchar();

printf("input the score ");

scanf("%d",&score);

getchar();

char *sql=sqlite3_mprintf("insert into student values('%d','%s','%d','%d')",number,name,age,score);

if(sqlite3_exec(db,sql,NULL,NULL,&errmsg) != SQLITE_OK)

{

perror("sqlite3_exec");

exit(-1);

}

else

printf("insert success!!\n");

return;

}

void delete_data(sqlite3 *db)

{

int num;

printf("please input the number you want to delete\n");

scanf("%d",&num);

getchar();

char *sql=sqlite3_mprintf("delete from student where number ='%d'",num);

if(sqlite3_exec(db,sql,NULL,NULL,&errmsg) != SQLITE_OK)

{

perror("sqlite3_exec_delete");

exit(-1);

}

else

printf("delete success!!\n");

return;

}

void updata_data(sqlite3 * db)

{

int num,age,score;

char name[20];

printf("please input the number you want to updata\n");

scanf("%d",&num);

getchar();

printf("input the name: ");

scanf("%s",name);

getchar();

printf("input the age: ");

scanf("%d",&age);

getchar();

printf("input the score ");

scanf("%d",&score);

getchar();

//char sql[1024];

//sprintf(sql,"update student set name='%s',age='%d',score='%d' where number='%d'",name,age,score,num);

char *sql=sqlite3_mprintf("update student set name='%s',age='%d',score='%d' where number='%d'",name,age,score,num);

if(sqlite3_exec(db,sql,NULL,NULL,&errmsg) != SQLITE_OK)

{

perror("sqlite3_exec_update");

exit(-1);

}

else

printf("update success!!\n");

return;

}

void show_data(sqlite3 *db)

{

char ** resultp;

int nrow,ncolumn,i,j,index;

char *sql="select * from student";

if(sqlite3_get_table(db,sql,&resultp,&nrow,&ncolumn,&errmsg) != SQLITE_OK)

{

perror("sqlite3_get_table");

exit(-1);

}

index = ncolumn;

for(i = 0 ;i< ncolumn; i++)

printf("%s\t",resultp[i]);

printf("\n");

for(i = 0;i< nrow;i++)

{

for(j = 0;j< ncolumn;j++)

printf("%s\t",resultp[index++]);

printf("\n");

}

return ;

}

void quit(sqlite3 *db)

{

printf("BYBYE!!\n");

sqlite3_close(db);

exit(0);

}

int main()

{

int nu;

sqlite3 *db;

if(sqlite3_open("my.db",&db) != SQLITE_OK)

{

perror("sqlite3_open");

exit(-1);

}

while(1)

{

printf("**********************\n");

printf("* 1.insert data *\n");

printf("* 2.delete data *\n");

printf("* 3.updata data *\n");

printf("* 4.show data *\n");

printf("* 5. quit *\n");

printf("**********************\n");

printf("please input the number you want to operate:\n");

scanf("%d",&nu);

getchar();

switch(nu)

{

case 1:

insert_data(db);

break;

case 2:

delete_data(db);

break;

case 3:

updata_data(db);

break;

case 4:

show_data(db);

break;

case 5 :

quit(db);

break;

}

}

return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值