asp学生成绩查询源代码(查询学生成绩的代码)
admin 发布:2022-12-19 17:42 829
今天给各位分享asp学生成绩查询源代码的知识,其中也会对查询学生成绩的代码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
asp成绩统计: 我是菜鸟、求asp成绩统计代码
诉你思路你自己写代码:
%
'这是数据库连接
db1="xscj.mdb "
Set Conn= Server.CreateObject("ADODB.Connection")
cttr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="Server.MapPath(db1)
Conn.Open cttr
%
%
'读取频道
Dim zongji,banji,xuehao
zongji=0
banji=Request.Form("班级") '接收表单值
xuehao=Request.Form("学号") '接收表单值
if banji"" then
Sql = "Select * From 你的数据库表名 Where bj='"banji"'"
else xuehao"" then
Sql = "Select * From 你的数据库表名 Where xh='"xuehao"'"
else banji"" and xuehao"" then
Sql = "Select * From 你的数据库表名 Where xh='"xuehao"' And bj='"banji"'"
end if
Set Rs = Server.CreateObject("Adodb.Recordset")
Rs.Open Sql,conn,1,3
n = rs.recordcount
for i=1 to n
zongji = zongji+rs("cj")
rs.movenext
next
rs.close
Set rs=nothing
Response.Write zongji '输出结果
%
转excel代码你再搜索一下百度,有很多例子的。
ASP的基于网页作简单的学生成绩查询系统
#includestdio.h
#includestring.h
#includestdlib.h
#define MAX 1000 //文件记录最大值
int p=0; //文件中的记录数
struct student //定义学生记录的结构
{
char num[8]; // 学号
char name[8]; //姓名
float chinese; //语文成绩
float english; //英语成绩
float math; //数学成绩
float total; //个人总分
float avr; //个人平均分
}stu[MAX];
void read_file()
{
FILE *file1; //文件指针
file1=fopen("stuinform.txt","at+"); //文件存在打开文件不存在建立文件
if(file1==NULL) //文件如果打开失败则输出"Cannot open file1!"
printf("Cannot open file1!");
p=0;
while(1)
{
if(feof(file1)) //检测文件是否结束
break;
fread(stu[p],sizeof(struct student),1,file1);
p++;
}
p--;
fclose(file1); //关闭文件
}
void write_file()
{
FILE *file1; //文件指针
int i;
file1=fopen("stuinform.txt","w+"); //文件存在打开文件不存在建立文件
if(file1==NULL) //文件如果打开失败则输出"Cannot open file1!"
printf("Cannot open file1!");
for(i=0;ip;i++)
fwrite(stu[i],sizeof(struct student),1,file1);
fclose(file1);
}
void menu()//系统主界面 OK
{
printf("\n\n\t ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^");
printf("\n\n\t * * * * * * 欢迎使用学生成绩管理系统 * * * * *");
printf("\n\n\t * * * * * * * 设计者:xxx * * * * * * * * * * ");
printf("\n\n\t ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ^-^ ");
printf("\n\n\t\t | 1.学 生 成 绩 录 入 |");
printf("\n\n\t\t | 2.学 生 成 绩 输 出 |");
printf("\n\n\t\t | 3.按总分对学生成绩做排序 |");
printf("\n\n\t\t | 4.按学号查找学生成绩信息 |");
printf("\n\n\t\t | 5.按姓名修改学生成绩信息 |");
printf("\n\n\t\t | 6.按学号删除学生成绩信息 |");
printf("\n\n\t\t | 7.退 出 系 统 |");
printf("\n\n\t -----------------------------------------------------");
printf("\n\n\t ************请您选择操作选项(1-7)************** ");
printf("\n");
}
void main()//主函数
{
int item;
void input();
void output();
void sort();
void search();
void change();
void del();
void exit();
read_file();
do
{
menu();
while(1)
{
scanf("%d",item);
if(item=1item=7)
break;
else
printf("\t选项输入错误,请重新输入\n");
}
switch(item)
{
case 1:input();break;
case 2:output();break;
case 3:sort();break;
case 4:search();break;
case 5:change();break;
case 6:del();break;
case 7:exit(); break;
}
write_file();
}while(item7);
}
void input() //输入子函数
{
int flag=1,i,j=0;
char c;
system("cls");
printf("\n\n\n\n\t ==========欢迎进入学生成绩录入系统============\n\n");
do
{
loop: printf("\t\t请输入学生信息:\n\n\n");
printf("\t\t请输入学生学号:");
scanf("%s",stu[p].num);
for(i=0;ip;i++)
{
if((strcmp(stu[i].num,stu[p].num))==0)
{
system("cls");
printf("此学号已存在,请重新输入!\n");
goto loop;
}
}
printf("\t\t请输入姓名:");
scanf("%s",stu[p].name);
stu[p].total=0;
printf("\t\t请输入同学语文成绩:");
scanf("%f",stu[p].chinese);
printf("\t\t请输入同学英语成绩:");
scanf("%f",stu[p].english);
printf("\t\t请输入同学数学成绩:");
scanf("%f",stu[p].math);
stu[p].total=stu[p].chinese+stu[p].english+stu[p].math;
stu[p].avr=stu[p].total/3.0;
//i++;
p++;
getchar();
printf("\n\t是否继续输入学生成绩(Y/N)?");
while(1)
{
c=getchar();
if(c=='Y'||c=='y') flag=1;
if(c=='N'||c=='n') flag=0;
if(c=='N'||c=='n'||c=='Y'||c=='y')
break;
}
system("cls");
}while(flag==1);
}
void output() //输出子函数
{
int i,j;
system("cls");
printf("\n\n\t********************学生成绩信息表*************************\n");
printf("\n\t学号 姓 名 语 文 外 语 数 学 总 分 平均分\n");
for(i=0;ip;i++)
{
printf("\t%-8s%-10s",stu[i].num,stu[i].name);
printf("%-9.2f%-9.2f%-9.2f",stu[i].chinese,stu[i].english,stu[i].math);
printf("%-9.2f",stu[i].total);
printf("%-9.2f\n",stu[i].avr);
}
printf("\n\t--------------------------------------------------------------\n");
printf("\n\t********************按任意键返回主界面*************************\n");
getchar();
getchar();
}
void sort() //排序子函数
{
int i,j;
struct student temp;
system("cls");
for(i=0;ip-1;i++) //排序
for(j=i+1;jp;j++)
if(stu[i].totalstu[j].total)
{
temp=stu[i];
stu[i]=stu[j];
stu[j]=temp;
}
printf("\n\n\n\t\t************排序后的学生成绩信息如下:*************\n\n\n");
printf("\n\t学号 姓 名 语 文 数 学 外 语 总 分 平均分\n\n");
for(i=0;ip;i++)
{
printf("\n\t%-8s%-10s",stu[i].num,stu[i].name);
for(j=0;j3;j++)
printf("%-9.2f",stu[i].chinese,stu[i].english,stu[i].math);
printf("%-9.2f",stu[i].total);
printf("%-9.2f\n",stu[i].avr);
}
printf("\n\n\n\n\n\t\t****************按任意键返回主界面*****************\n\n");
getchar();
getchar();
}
void search() //查询子函数
{
int i,j,flag=1,ifsearch=0;
char num[8],c;
while(flag==1)
{
system("cls");
printf("\n\n\n\t请输入要查找的学生学号:");
scanf("%s",num);
for(i=0;ip;i++)
if(strcmp(num,stu[i].num)==0) //进行学号比较
{
ifsearch=1;
printf("\n\t学号 姓 名 语 文 数 学 外 语 总 分 平均分\n\n");
printf("\n\t%-8s%-10s",stu[i].num,stu[i].name);
for(j=0;j3;j++)
printf("%-9.2f",stu[i].chinese,stu[i].english,stu[i].math);
printf("%-9.2f",stu[i].total);
printf("%-9.2f\n",stu[i].avr);
}
if(ifsearch==0)
printf("\n\n\t对不起,没有这个学生的成绩信息");
printf("\n\n\n\t 是否继续查找??(Y/N)?");
getchar();
while(1)
{
c=getchar();
if(c=='Y'||c=='y') {flag=1;ifsearch=0;}
if(c=='N'||c=='n') flag=0;
if(c=='N'||c=='n'||c=='Y'||c=='y')
break;
}
}
}
void change() //修改子函数
{
int i,j,flag=1,ifsearch=0;
char name[8],c;
while(flag==1)
{
system("cls");
printf("\n\n\n\n\t请输入要修改的学生姓名:");
scanf("%s",name);
for(i=0;ip;i++)
{
if(strcmp(name,stu[i].name)==0)
{
system("cls");
ifsearch=1;
printf("\n\n\n\n\n\t要修改学生的课程成绩为\n\n");
printf("\n\t学号 姓 名 语 文 数 学 外 语 总 分 平均分\n\n");
printf("\n\t%-8s%-10s",stu[i].num,stu[i].name);
for(j=0;j3;j++)
printf("%-9.2f",stu[i].chinese,stu[i].english,stu[i].math);
printf("%-9.2f",stu[i].total);
printf("%-9.2f\n",stu[i].avr);
printf("\n\n\t确定修改该学生信息(y/n)?\n\n");
c=getchar();
while(1)
{
c=getchar();
if(c=='Y'||c=='y') flag=1;
if(c=='N'||c=='n') flag=0;
if(c=='N'||c=='n'||c=='Y'||c=='y')
break;
}
if(flag==1)
{
printf("\t请输入要修改学生的成绩:\n\n");
stu[i].total=0;
printf("\t请输入同学语文成绩:");
scanf("%f",stu[i].chinese);
printf("\t请输入同学英语成绩:");
scanf("%f",stu[i].english);
printf("\t请输入同学数学成绩:");
scanf("%f",stu[i].math);
stu[i].total=stu[i].chinese+stu[i].english+stu[i].math;
}
stu[i].avr=stu[i].total/3;
}
}
if(ifsearch==0)
printf("\n\n\n\t对不起,没有这个学生的成绩信息\n\n\n");
printf("\n\t是否继续修改(Y/N)?");
getchar();
while(1)
{
c=getchar();
if(c=='Y'||c=='y') {flag=1;ifsearch=0;}
if(c=='N'||c=='n') flag=0;
if(c=='N'||c=='n'||c=='Y'||c=='y')
break;
}
}
}
void del() //删除子函数OK
{
int i,j,flag=1,member=0,ifsearch=0;
char num[8],c;
while(flag==1)
{
system("cls");
printf("\n\n\n\n\t请输入要删除的学生学号:");
scanf("%s",num);
for(i=0;ip;i++)
{
if(strcmp(num,stu[i].num)==0)
{
system("cls");
ifsearch=1;
printf("\n\n\n\n\n\t要删除的学生信息\n\n");
printf("\n\t学号 姓 名 语 文 数 学 外 语 总 分 平均分\n\n");
printf("\n\t%-8s%-10s",stu[i].num,stu[i].name);
for(j=0;j3;j++)
printf("%-9.2f",stu[i].chinese,stu[i].english,stu[i].math);
printf("%-9.2f",stu[i].total);
printf("%-9.2f\n",stu[i].avr);
printf("\n\n\t确定删除该学生信息(y/n)?\n\n");
c=getchar();
while(1)
{
c=getchar();
if(c=='Y'||c=='y') flag=1;
if(c=='N'||c=='n') flag=0;
if(c=='N'||c=='n'||c=='Y'||c=='y')
break;
}
if(flag==1)
{
for(j=i;jp-1;j++)
stu[j]=stu[j+1];
member++;
}
}
}
if(ifsearch==0) printf("\n\n\n\t对不起,没有这个学生的成绩信息\n\n");
printf("\n\t是否继续删除操作(Y/N)?\n\n");
getchar();
while(1)
{
c=getchar();
if(c=='Y'||c=='y') {flag=1;ifsearch=0;}
if(c=='N'||c=='n') flag=0;
if(c=='N'||c=='n'||c=='Y'||c=='y')
break;
}
}
p=p-member;
}
void exit()//系统退出界面OK
{
system("cls");
printf("\n\n\n\t |=================================================|");
printf("\n\n\t |========^-^ 谢谢使用学生成绩管理系统!^-^========|");
printf("\n\n\t | |");
printf("\n\t |===========^-^ 设计者:第十小组 ^-^===============|");
printf("\n\n\t |===================^-^ 再见^-^====================|");
printf("\n\n\n\t | * * * * * * * * * 按任意键退出 * * * * * * * * *|");
这是我们实训做的一个学生成绩管理系统,里面包含了输入,输出,查询,排序,删除等功能,学生成绩查询系统你只需要看“查询子函数”就行了,希望对你有帮助!
求学生成绩管理系统的源代码
#include stdio.h
#include stdlib.h
#define FILENAME "student.dat"
typedef enum{MAN, WOMAN} SEX;
typedef struct tagStudent
{
int num; //学生的编号
char name[20]; //学生的姓名
SEX sex; //学生的性别
int age; //学生的年龄
char major[20]; //学生的专业
struct tagStudent *next;//下一个节点的指针
}STUDENT, *PSTUDENT;
STUDENT g_head; //头节点
//1.显示菜单
void ShowMenu();
//2.获取用户选择的菜单的编号
int GetMenuChoose();
//3.创建一个节点,它会返回一个新创建的学生信息节点的指针
PSTUDENT CreateStudent();
//4.把学生信息节点加入到链表中
int AddStudent(PSTUDENT pstu);
//5.返回指定编号学生节点的上一个节点的指针
PSTUDENT GetPrevAddr(int num);
//6.显示所有学生信息
void ShowAll();
//7.显示信息数量
int ShowStudentCount();
//8.修改学生信息,参数为要修改的学生的编号
void ModityStudent(int num);
//9.获取用户的选择
int Question(const char *pstr);
//10.获取用户输入的学生的编号
int GetInputNum();
//11.删除编号为num的学生信息
void DelStudent(int num);
//12.删除所有的学生信息
void DelAll();
//13.把学生信息保存到文件当中
void SaveToFile();
//14.从文件中读取学生信息
void LoadFromFile();
int main()
{
int running = 1;
while(running)
{
switch(GetMenuChoose())
{
case 0:
running = 0;
break;
case 1:
// printf("你选择了菜单1\n");
AddStudent(CreateStudent());
break;
case 2:
// printf("你选择了菜单2\n");
DelStudent(GetInputNum());
break;
case 3:
printf("你选择了菜单3\n");
break;
case 4:
// printf("你选择了菜单4\n");
ModityStudent(GetInputNum());
break;
case 5:
// printf("你选择了菜单5\n");
DelAll();
break;
case 6:
// printf("你选择了菜单6\n");
ShowAll();
break;
case 7:
// printf("你选择了菜单7\n");
ShowStudentCount();
break;
case 8:
// printf("你选择了菜单8\n");
LoadFromFile();
break;
case 9:
// printf("你选择了菜单9\n");
SaveToFile();
break;
}
system("pause");
}
return 0;
}
//1.显示菜单
void ShowMenu()
{
system("cls");
printf("-----------------------------学生管理系统--------------------------------\n");
printf("\n\t1.添加学生信息 2.删除某个学生信息 3.显示某个学生信息\n");
printf("\t4.修改学生信息 5.删除所有学生信息 6.显示所有学生信息\n");
printf("\t7.显示信息数量 8.读取文件学生信息 9.保存学生信息至文件\n");
printf("\t0.退出系统\n");
printf("\n-------------------------------------------------------------------------\n");
}
//2.获取用户选择的菜单的编号
int GetMenuChoose()
{
int num;//保存用户选择的菜单编号
ShowMenu();
printf("请选择菜单(0 ~ 9):");
while(1 != scanf("%d", num) || num 0 || num 9)
{
ShowMenu();
printf("选择菜单错误,请重新选择(0 ~ 9):");
fflush(stdin);//清空输入缓冲区
}
return num;
}
//3.创建一个节点,它会返回一个新创建的学生信息节点的指针
PSTUDENT CreateStudent()
{
int sex;
PSTUDENT pstu = (PSTUDENT)malloc(sizeof(STUDENT));//在堆内存申请空间,存储学生信息
if(!pstu)
{
printf("申请内存空间失败!\n");
return NULL;
}
printf("请输入学生的编号(整型):");
while(1 != scanf("%d", pstu-num) || GetPrevAddr(pstu-num))
{
printf("学生编号输入错误或已经存在,请重新输入学生的编号(整型):");
fflush(stdin);
}
printf("请输入学生的姓名(小于20字符):");
scanf("%20s", pstu-name);//(*pstu).name
printf("请选择学生的性别(1.男 2.女):");
while(1 != scanf("%d", sex) || sex 1 || sex 2)
{
printf("性别选择错误,请重新选择学生的性别(1.男 2.女):");
fflush(stdin);
}
if(1 == sex)
pstu-sex = MAN;
else
pstu-sex = WOMAN;
printf("请输入学生的年龄(10 ~ 40):");
while(1 != scanf("%d", pstu-age) || pstu-age 10 || pstu-age 40)
{
printf("年龄输入错误!请重新输入学生的年龄(10 ~ 40):");
fflush(stdin);
}
printf("请输入学生的专业(小于20字符):");
scanf("%20s", pstu-major);
pstu-next = NULL;
return pstu;
}
//4.把学生信息节点加入到链表中
int AddStudent(PSTUDENT pstu)
{
PSTUDENT ps = g_head;
if(!pstu)
{
return 0;
}
//判断一下该学生信息是不是已经存在
if(GetPrevAddr(pstu-num))
{
printf("编号为%d的学生信息已经存在!\n", pstu-num);
free(pstu);//释放该节点内存空间
return 0;
}
//while循环的作用是找到当前链表的最后一个节点
while(ps-next)
ps = ps-next;
//把新节点加入到最后那个节点的后面
ps-next = pstu;
pstu-next = NULL;
return 1;
}
//5.返回指定编号学生节点的上一个节点的指针
PSTUDENT GetPrevAddr(int num)
{
PSTUDENT pstu = g_head;
while(pstu-next)
{
if(pstu-next-num == num)
return pstu;
pstu = pstu-next;
}
return NULL;
}
//6.显示所有学生信息
void ShowAll()
{
PSTUDENT pstu = g_head;
printf("--------------------------------------------------------------------\n");
printf(" 编号 姓名 性别 年龄 专业\n");
printf("--------------------------------------------------------------------\n");
while(pstu-next)
{
printf(" %-8d ", pstu-next-num);
printf("%-20s", pstu-next-name);
printf("%-6s", pstu-next-sex == MAN ? "男" : "女");
printf("%4d", pstu-next-age);
printf("%20s\n", pstu-next-major);
pstu = pstu-next;//让指针指向下一个节点
}
printf("--------------------------------------------------------------------\n");
}
//7.显示信息数量
int ShowStudentCount()
{
int count = 0;
PSTUDENT pstu = g_head;
while(pstu-next)
{
++count;
pstu = pstu-next;
}
printf("\n当前共有%d位学生信息。\n", count);
return count;
}
//8.修改学生信息,参数为要修改的学生的编号
void ModityStudent(int num)
{
PSTUDENT pstu = GetPrevAddr(num);//获取要修改的学生节点的上一个节点
int choose;
if(!pstu)
{
printf("没有编号为%d的学生信息。\n", num);
return;
}
pstu = pstu-next;//将要修改的学员节点的指针改为指向自己的
printf("当前学生的姓名为%s,", pstu-name);
if(Question("确定要修改吗?"))
{
printf("请输入学生的姓名(小于20字符):");
scanf("%20s", pstu-name);
}
printf("当前学生的性别为%s,", pstu-sex == MAN ? "男" : "女");
if(Question("确定要修改吗?"))
{
printf("请输入学生的性别(1.男 2.女):");
while(1 != scanf("%d", choose) || choose 1 || choose 2)
{
printf("输入错误,请重新输入学生的性别(1.男 2.女):");
fflush(stdin);
}
if(1 == choose)
pstu-sex = MAN;
else
pstu-sex = WOMAN;
}
printf("当前学生的年龄为%d,", pstu-age);
if(Question("确定要修改吗?"))
{
printf("请输入学生的年龄(10 ~ 40):");
while(1 != scanf("%d", pstu-age) || pstu-age 10 || pstu-age 40)
{
printf("年龄输入错误!请重新输入学生的年龄(10 ~ 40):");
fflush(stdin);
}
}
printf("当前学生的专业为%s,", pstu-major);
if(Question("确定要修改吗?"))
{
printf("请输入学生的专业(小于20字符):");
scanf("%20s", pstu-major);
}
printf("修改完毕!\n");
}
//9.获取用户的选择
int Question(const char *pstr)
{
char answer;
printf("%s请选择(y or n):", pstr);
while(1 != scanf(" %c", answer) || (answer != 'y' answer != 'n'))
{
printf("输入错误!%s请重新选择(y or n):", pstr);
fflush(stdin);//清空输入缓冲区,C库函数
}
if('y' == answer)
return 1;
else
return 0;
}
//10.获取用户输入的学生的编号
int GetInputNum()
{
int num;
printf("请输入学生的编号(整型):");
while(1 != scanf("%d", num))
{
printf("编号输入错误!请重新输入学生的编号(整型):");
fflush(stdin);
}
return num;
}
//11.删除编号为num的学生信息
void DelStudent(int num)
{
PSTUDENT pstu, ptmp;
if(pstu = GetPrevAddr(num))
{
if(!Question("确定要删除该学生信息吗?"))
{
return;
}
ptmp = pstu-next;
pstu-next = ptmp-next;
free(ptmp);
printf("删除了编号为%d的学生信息。\n", num);
}
else
{
printf("没有找到编号为%d的学生信息。\n", num);
}
}
//12.删除所有的学生信息
void DelAll()
{
PSTUDENT pstu = g_head.next, ptmp;
int count = 0;
if(!Question("确定要删除当前所有的学生信息吗?"))
{
return;
}
while(pstu)
{
ptmp = pstu;
pstu = pstu-next;
free(ptmp);
++count;
}
printf("共删除了%d位学生信息。\n", count);
g_head.next = NULL;
}
//13.把学生信息保存到文件当中
void SaveToFile()
{
FILE *pf = fopen(FILENAME, "wb");
PSTUDENT pstu = g_head;
int i = 0, count = ShowStudentCount();
if(!pf)
{
printf("打开待写入的文件失败!\n");
return;
}
if(!Question("确定要将当前学生信息保存到文件中吗?"))
{
fclose(pf);
return;
}
fwrite(count, 1, sizeof(count), pf);//把学生信息的数量先写入到文件头
while(pstu-next)
{
fwrite(pstu-next, 1, sizeof(STUDENT), pf);//把每位学生信息写入文件
++i;
pstu = pstu-next;
}
fclose(pf);
if(i == count)
{
printf("成功的写入了%d条学生信息。\n", count);
}
else
{
printf("应写入%d条学生信息,实际写入%d条学生信息。\n", count, i);
}
}
//14.从文件中读取学生信息
void LoadFromFile()
{
int i, count = 0, repeat = 0;
FILE *pf;
PSTUDENT pstu;
printf("提示:从文件中读取学生信息会询问是否清空当前学生信息(不清空表示合并所有信息)。\n");
if((pf = fopen(FILENAME, "rb")) == NULL)
{
printf("文件还没有创建,请手工输入学生信息并保存吧!\n");
return;
}
DelAll();//删除之前的所有学生信息,然后从文件中读取
fread(count, 1, sizeof count, pf);//获取学生信息的数量
for(i = 0; i count; ++i)
{
pstu = (PSTUDENT)malloc(sizeof(STUDENT));
fread(pstu, 1, sizeof(STUDENT), pf);
if(!AddStudent(pstu))
{
++repeat;//保持有多少个和当前链表中相重复的学生信息
}
}
fclose(pf);
printf("文件读取完毕!新增学生信息%d条。\n", count - repeat);
}
这个累死我了,我要财富值。。。为了这个不容易啊
asp学生成绩查询源代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于查询学生成绩的代码、asp学生成绩查询源代码的信息别忘了在本站进行查找喔。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
- 上一篇:安卓图片滑动代码(android长图滚动)
- 下一篇:汽车衡c源代码(平衡车源码)
相关推荐
- 05-16域名网站查询,520113子域名网站查询
- 05-15百度代理公司查询,百度代理公司怎么样
- 05-15百度收录量查询,百度收录查询api
- 05-15站长工具外链查询,站长工具接口
- 05-14百度代理公司查询,百度授权代理查询
- 05-12网址查询服务中心,网址查询系统
- 05-11关键词指数批量查询,百度关键词指数批量查询
- 05-10小红书指数,小红书指数查询
- 05-09网页代码,网页代码快捷键
- 05-08站长之家,备案查询站长之家
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接