K-Means算法是最古老也是應用最廣泛的聚類算法,它使用質心定義原型,質心是一組點的均值,通常該算法用于n維連續空間中的對象。 K-Means算法流程 step1:選擇K個點作為初始質心 step2:repeat 將每個點指派到最近的質心,形成K個簇 重新計算每個簇的質心 until 質心不在變化 例如下圖的樣本集,初始選擇是三個質心比較集中,但是迭代3次之后,質心趨于穩定,并將樣本集分為3部分 我們對每一個步驟都進行分析 step1:選擇K個點作為初始質心 這一步首先要知道K的值,也就是說K是手動設置的,而不是像EM算法那樣自動聚類成n個簇 其次,如何選擇初始質心 最簡單的方式無異于,隨機選取質心了,然后多次運行,取效果最好的那個結果。這個方法,簡單但不見得有效,有很大的可能是得到局部最優。 另一種復雜的方式是,隨機選取一個質心,然后計算離這個質心最遠的樣本點,對于每個后繼質心都選取已經選取過的質心的最遠點。使用這種方式,可以確保質心是隨機的,并且是散開的。 step2:repeat 將每個點指派到最近的質心,形成K個簇 重新計算每個簇的質心 until 質心不在變化 如何定義最近的概念,對于歐式空間中的點,可以使用歐式空間,對于文檔可以用余弦相似性等等。對于給定的數據,可能適應與多種合適的鄰近性度量。
上傳時間: 2018-11-27
上傳用戶:1159474180
設有n=2k個運動員要進行網球循環賽。現要設計一個滿足以下要求的比賽日程表:⑴每個選手必須與其他n-1個選手各賽一次;⑵每個選手一天只能賽一次;⑶循環賽一共進行n-1天。按此要求可將比賽日程表設計-成有n行和n-l列的一個表。在表中第i行和第j列處填入第i個選手在第j天所遇到的選手。用分治法編寫為該循環賽設計一張比賽日程表的算法并運行實現、對復雜度進行分析。
上傳時間: 2019-06-04
上傳用戶:594551562
#include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score { float math; float english; float computer; }; struct student { int number; char name[20]; struct score sco; float average; }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學生信息 void input_student2(void);//輸入總函數 void input_student3(int &,int);//判斷學號是否重復 void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計算機成績排序 void sort_student2(student s[],int);//按照數學成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計算學生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學生信息 void print_student1(int);//顯示全部學生資料 void sort_student1(void);//排序總函數 void menu(void);//菜單調度總函數 int search_student2(int);//按學號查詢學生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數 void delete_student2(int,int);//刪除學生信息 void delete_student1(void);//刪除總函數 void change_student2(int);//修改學生資料 void change_student1(void);//修改總函數 void input_score3(int);//統計成績 void input_score1(void);//統計成績總函數 void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統 void save_student(student *,int);//保存學生信息 void main() { menu(); } void save_student(student *s,int a)//保存學生信息 { FILE *fp; if((fp=fopen("d:\\學生信息.txt","wb"))==NULL) { printf("不能打開文件!\n"); } else { printf("保存信息到D盤\n"); fprintf(fp,"本班所有學生具體信息如下:\r\n"); fprintf(fp," 學號 姓名 數學成績 英語成績 計算機成績 平均成績\r\n"); for(int i=0;i<a;i++) { fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average); fprintf(fp,"\r\n"); } fclose(fp); printf("信息保存成功!\n"); } } void exit_student(void)//退出系統 { exit(1); } void print_help(void)//輸出幫助信息 { printf("本系統所能容納的最大學生數為%d人\n學生信息保存在D盤根目錄下,保存文件為“學生信息.txt”。\n感謝使用!\n",N); } void input_score1(void)//統計成績總函數 { int c; c=search_student2(iNumOfStu); printf("學號:%d\n",stu[c].number); printf("姓名:%s\n",stu[c].name); input_score3(c); printf("新成績錄入成功!\n"); stu[c].average=input_score2(c); } void input_score3(int a)//統計成績 { printf("數學新成績:"); scanf("%f",&stu[a].sco.math); printf("英語新成績:"); scanf("%f",&stu[a].sco.english); printf("計算機新成績:"); scanf("%f",&stu[a].sco.computer); } void change_student2(int a)//修改學生資料 { printf("學號:%d----修改為:",stu[a].number); scanf("%d",&stu[a].number); getchar(); printf("姓名:%s----修改為:",stu[a].name); gets(stu[a].name); printf("數學成績:%.2f----修改為:",stu[a].sco.math); scanf("%f",&stu[a].sco.math); printf("英語成績:%.2f----修改為:",stu[a].sco.english); scanf("%f",&stu[a].sco.english); printf("計算機成績:%.2f----修改為:",stu[a].sco.computer); scanf("%f",&stu[a].sco.computer); } void change_student1(void)//修改總函數 { int c; c=search_student2(iNumOfStu); getchar(); printf("是否要修改此學生信息?(“y”代表是)"); char d; scanf("%c",&d); if(d=='y'||d=='Y') { change_student2(c); stu[c].average=input_score2(c); printf("信息修改成功!\n"); } } void delete_student1(void)//刪除總函數 { int c; c=search_student2(iNumOfStu); getchar(); printf("是否刪除此條記錄?(“y”代表是)"); char d; scanf("%c",&d); if(d=='y'||d=='Y') { delete_student2(c,iNumOfStu); printf("記錄已刪除!\n"); } } void delete_student2(int a,int b)//刪除學生信息 { for(int i=a;i<b-1;i++) { stu[i]=stu[i+1]; } --iNumOfStu; } void search_student1(void)//查詢總函數 { printf("1、按學號查詢\n2、按平均分最高查詢\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { search_student2(iNumOfStu); break; } case 2: { search_student3(iNumOfStu); break; } default: break; } } void menu(void)//菜單調度總函數 { print_menu(); choosemenu(); } void sort_student1(void)//排序總函數 { printf("1、按數學成績排序\n2、按英語成績排序\n3、按計算機成績排序\n4、按平均成績排序\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { sort_student2(stu,iNumOfStu); break; } case 2: { sort_student3(stu,iNumOfStu); break; } case 3: { sort_student4(stu,iNumOfStu); break; } case 4: { sort_student5(stu,iNumOfStu); break; } default: break; } } void print_student1(int a)//顯示全部學生資料 { printf("本班所有學生具體信息如下\n"); print_student2(); for(int i=0;i<a;i++) { print_student3(i); } } void print_student3(int a)//顯示學生信息 { printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average); } void print_student2(void)//顯示表頭 { printf(" 學號 姓名 數學成績 英語成績 計算機成績 平均成績\n"); } void input_student4(int a,int b)//覆蓋原信息 { stu[a]=stu[b-1]; --iNumOfStu; } void input_student3(int &a,int b)//判斷學號是否重復 { if(a!=0) { int i=0; do { if(stu[a].number==stu[i].number) { printf("此學號代表的學生已錄入\n1、覆蓋原信息\n2、重新輸入\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { input_student4(i,iNumOfStu); a=iNumOfStu-1; printf("信息已替換!\n"); break; } case 2: { printf("請重新輸入學生信息:\n"); input_student1(iNumOfStu-1); break; } default: break; } break; } ++i; } while(i<b-1); } } void print_menu(void)//輸出菜單 { 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("====================================\n"); printf("請選擇:"); } void input_student2(void)//輸入總函數 { char end; printf("請輸入學生信息(在最后一個學生信息錄入完成后以“/”結束錄入):\n"); for(int i=0;(end=getchar())!='/';i++) { input_student1(i); ++iNumOfStu; input_student3(i,iNumOfStu); } for(int j=0;j<iNumOfStu;j++) { stu[j].average=input_score2(j); } } void input_student1(int a)//輸入學生信息 { printf("學號:"); scanf("%d",&stu[a].number); getchar(); printf("姓名:"); gets(stu[a].name); printf("數學成績:"); scanf("%f",&stu[a].sco.math); printf("英語成績:"); scanf("%f",&stu[a].sco.english); printf("計算機成績:"); scanf("%f",&stu[a].sco.computer); } float input_score2(int a)//計算學生平均成績 { return (stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3; } void search_student3(int a)//按平均分最高查詢并輸出 { int max=0; for(int i=0;i<a;i++) { if(stu[max].average<stu[i].average) { max=i; } } print_student2(); print_student3(max); } void sort_student2(student s[],int a)//按照數學成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.math>stu[max].sco.math) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student3(student s[],int a)//按照英語成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.english>stu[max].sco.english) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student4(student s[],int a)//按照計算機成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.computer>stu[max].sco.computer) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student5(student s[],int a)//按照平均成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].average>stu[max].average) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } int search_student2(int a)//按照學號查找學生并輸出 { int num; int c; printf("請輸入要查詢的學號:"); scanf("%d",&num); for(int i=0;i<a;i++) { if(num==stu[i].number) { c=i; } } printf("此學生的信息是:\n"); print_student2(); print_student3(c); return c; } void choosemenu(void)//菜單選擇 { int i; scanf("%d",&i); switch(i) { case 1: { input_student2(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 2: { delete_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 3: { search_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 4: { change_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 5: { print_student1(iNumOfStu); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 6: { input_score1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 7: { sort_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 8: { save_student(stu,iNumOfStu); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 9: { print_help(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 10: { exit_student(); } default: break; } } 運行結果: 源文件下載地址: http://115.com/file/clnq138g#一個簡單的學生成績管理系統.rar (請將此地址復制到瀏覽器地址欄中訪問下載頁面)
標簽: 成績查詢系統
上傳時間: 2019-06-08
上傳用戶:啊的撒旦
#include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score { float math; float english; float computer; }; struct student { int number; char name[20]; struct score sco; float average; }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學生信息 void input_student2(void);//輸入總函數 void input_student3(int &,int);//判斷學號是否重復 void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計算機成績排序 void sort_student2(student s[],int);//按照數學成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計算學生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學生信息 void print_student1(int);//顯示全部學生資料 void sort_student1(void);//排序總函數 void menu(void);//菜單調度總函數 int search_student2(int);//按學號查詢學生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數 void delete_student2(int,int);//刪除學生信息 void delete_student1(void);//刪除總函數 void change_student2(int);//修改學生資料 void change_student1(void);//修改總函數 void input_score3(int);//統計成績 void input_score1(void);//統計成績總函數 void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統 void save_student(student *,int);//保存學生信息 void main() { menu(); } void save_student(student *s,int a)//保存學生信息 { FILE *fp; if((fp=fopen("d:\\學生信息.txt","wb"))==NULL) { printf("不能打開文件!\n"); } else { printf("保存信息到D盤\n"); fprintf(fp,"本班所有學生具體信息如下:\r\n"); fprintf(fp," 學號 姓名 數學成績 英語成績 計算機成績 平均成績\r\n"); for(int i=0;i<a;i++) { fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average); fprintf(fp,"\r\n"); } fclose(fp); printf("信息保存成功!\n"); } } void exit_student(void)//退出系統 { exit(1); } void print_help(void)//輸出幫助信息 { printf("本系統所能容納的最大學生數為%d人\n學生信息保存在D盤根目錄下,保存文件為“學生信息.txt”。\n感謝使用!\n",N); } void input_score1(void)//統計成績總函數 { int c; c=search_student2(iNumOfStu); printf("學號:%d\n",stu[c].number); printf("姓名:%s\n",stu[c].name); input_score3(c); printf("新成績錄入成功!\n"); stu[c].average=input_score2(c); } void input_score3(int a)//統計成績 { printf("數學新成績:"); scanf("%f",&stu[a].sco.math); printf("英語新成績:"); scanf("%f",&stu[a].sco.english); printf("計算機新成績:"); scanf("%f",&stu[a].sco.computer); } void change_student2(int a)//修改學生資料 { printf("學號:%d----修改為:",stu[a].number); scanf("%d",&stu[a].number); getchar(); printf("姓名:%s----修改為:",stu[a].name); gets(stu[a].name); printf("數學成績:%.2f----修改為:",stu[a].sco.math); scanf("%f",&stu[a].sco.math); printf("英語成績:%.2f----修改為:",stu[a].sco.english); scanf("%f",&stu[a].sco.english); printf("計算機成績:%.2f----修改為:",stu[a].sco.computer); scanf("%f",&stu[a].sco.computer); } void change_student1(void)//修改總函數 { int c; c=search_student2(iNumOfStu); getchar(); printf("是否要修改此學生信息?(“y”代表是)"); char d; scanf("%c",&d); if(d=='y'||d=='Y') { change_student2(c); stu[c].average=input_score2(c); printf("信息修改成功!\n"); } } void delete_student1(void)//刪除總函數 { int c; c=search_student2(iNumOfStu); getchar(); printf("是否刪除此條記錄?(“y”代表是)"); char d; scanf("%c",&d); if(d=='y'||d=='Y') { delete_student2(c,iNumOfStu); printf("記錄已刪除!\n"); } } void delete_student2(int a,int b)//刪除學生信息 { for(int i=a;i<b-1;i++) { stu[i]=stu[i+1]; } --iNumOfStu; } void search_student1(void)//查詢總函數 { printf("1、按學號查詢\n2、按平均分最高查詢\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { search_student2(iNumOfStu); break; } case 2: { search_student3(iNumOfStu); break; } default: break; } } void menu(void)//菜單調度總函數 { print_menu(); choosemenu(); } void sort_student1(void)//排序總函數 { printf("1、按數學成績排序\n2、按英語成績排序\n3、按計算機成績排序\n4、按平均成績排序\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { sort_student2(stu,iNumOfStu); break; } case 2: { sort_student3(stu,iNumOfStu); break; } case 3: { sort_student4(stu,iNumOfStu); break; } case 4: { sort_student5(stu,iNumOfStu); break; } default: break; } } void print_student1(int a)//顯示全部學生資料 { printf("本班所有學生具體信息如下\n"); print_student2(); for(int i=0;i<a;i++) { print_student3(i); } } void print_student3(int a)//顯示學生信息 { printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average); } void print_student2(void)//顯示表頭 { printf(" 學號 姓名 數學成績 英語成績 計算機成績 平均成績\n"); } void input_student4(int a,int b)//覆蓋原信息 { stu[a]=stu[b-1]; --iNumOfStu; } void input_student3(int &a,int b)//判斷學號是否重復 { if(a!=0) { int i=0; do { if(stu[a].number==stu[i].number) { printf("此學號代表的學生已錄入\n1、覆蓋原信息\n2、重新輸入\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { input_student4(i,iNumOfStu); a=iNumOfStu-1; printf("信息已替換!\n"); break; } case 2: { printf("請重新輸入學生信息:\n"); input_student1(iNumOfStu-1); break; } default: break; } break; } ++i; } while(i<b-1); } } void print_menu(void)//輸出菜單 { 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("====================================\n"); printf("請選擇:"); } void input_student2(void)//輸入總函數 { char end; printf("請輸入學生信息(在最后一個學生信息錄入完成后以“/”結束錄入):\n"); for(int i=0;(end=getchar())!='/';i++) { input_student1(i); ++iNumOfStu; input_student3(i,iNumOfStu); } for(int j=0;j<iNumOfStu;j++) { stu[j].average=input_score2(j); } } void input_student1(int a)//輸入學生信息 { printf("學號:"); scanf("%d",&stu[a].number); getchar(); printf("姓名:"); gets(stu[a].name); printf("數學成績:"); scanf("%f",&stu[a].sco.math); printf("英語成績:"); scanf("%f",&stu[a].sco.english); printf("計算機成績:"); scanf("%f",&stu[a].sco.computer); } float input_score2(int a)//計算學生平均成績 { return (stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3; } void search_student3(int a)//按平均分最高查詢并輸出 { int max=0; for(int i=0;i<a;i++) { if(stu[max].average<stu[i].average) { max=i; } } print_student2(); print_student3(max); } void sort_student2(student s[],int a)//按照數學成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.math>stu[max].sco.math) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student3(student s[],int a)//按照英語成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.english>stu[max].sco.english) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student4(student s[],int a)//按照計算機成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.computer>stu[max].sco.computer) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student5(student s[],int a)//按照平均成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].average>stu[max].average) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } int search_student2(int a)//按照學號查找學生并輸出 { int num; int c; printf("請輸入要查詢的學號:"); scanf("%d",&num); for(int i=0;i<a;i++) { if(num==stu[i].number) { c=i; } } printf("此學生的信息是:\n"); print_student2(); print_student3(c); return c; } void choosemenu(void)//菜單選擇 { int i; scanf("%d",&i); switch(i) { case 1: { input_student2(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 2: { delete_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 3: { search_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 4: { change_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 5: { print_student1(iNumOfStu); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 6: { input_score1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 7: { sort_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 8: { save_student(stu,iNumOfStu); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 9: { print_help(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 10: { exit_student(); } default: break; } } 運行結果: 源文件下載地址: http://115.com/file/clnq138g#一個簡單的學生成績管理系統.rar (請將此地址復制到瀏覽器地址欄中訪問下載頁面) #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score { float math; float english; float computer; }; struct student { int number; char name[20]; struct score sco; float average; }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學生信息 void input_student2(void);//輸入總函數 void input_student3(int &,int);//判斷學號是否重復 void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計算機成績排序 void sort_student2(student s[],int);//按照數學成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計算學生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學生信息 void print_student1(int);//顯示全部學生資料 void sort_student1(void);//排序總函數 void menu(void);//菜單調度總函數 int search_student2(int);//按學號查詢學生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數 void delete_student2(int,int);//刪除學生信息 void delete_student1(void);//刪除總函數 void change_student2(int);//修改學生資料 void change_student1(void);//修改總函數 void input_score3(int);//統計成績 void input_score1(void);//統計成績總函數 void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統 void save_student(student *,int);//保存學生信息 void main() { menu(); } void save_student(student *s,int a)//保存學生信息 { FILE *fp; if((fp=fopen("d:\\學生信息.txt","wb"))==NULL) { printf("不能打開文件!\n"); } else { printf("保存信息到D盤\n"); fprintf(fp,"本班所有學生具體信息如下:\r\n"); fprintf(fp," 學號 姓名 數學成績 英語成績 計算機成績 平均成績\r\n"); for(int i=0;i<a;i++) { fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average); fprintf(fp,"\r\n"); } fclose(fp); printf("信息保存成功!\n"); } } void exit_student(void)//退出系統 { exit(1); } void print_help(void)//輸出幫助信息 { printf("本系統所能容納的最大學生數為%d人\n學生信息保存在D盤根目錄下,保存文件為“學生信息.txt”。\n感謝使用!\n",N); } void input_score1(void)//統計成績總函數 { int c; c=search_student2(iNumOfStu); printf("學號:%d\n",stu[c].number); printf("姓名:%s\n",stu[c].name); input_score3(c); printf("新成績錄入成功!
標簽: c語言
上傳時間: 2019-06-09
上傳用戶:啊的撒旦
1. 日語假名及其發音一覽 平 片 羅 平 片 羅 平 片 羅 平 片 羅 平 片 羅 假 假 馬 假 假 馬 假 假 馬 假 假 馬 假 假 馬 音 音 音 音 音 ______________________________________________________________________________ あ ア a い イ i う ウ u え エ e お オ o か カ ka き キ ki く ク ku け ケ ke こ コ ko さ サ sa し シ si/shi す ス su せ セ se そ ソ so た タ ta ち チ chi つ ツ tsu て テ te と ト to な ナ na に ニ ni ぬ ヌ nu ね ネ ne の ノ no は ハ ha ひ ヒ hi ふ フ fu へ ヘ he ほ ホ ho ま マ ma み ミ mi む ム mu め メ me も モ mo や ヤ ya ゆ ユ yu よ ヨ yo ら ラ ra り リ ri る ル ru れ レ re ろ ロ ro わ ワ wa を ヲ o/wo ん ン n が ガ ga ぎ ギ gi ぐ グ gu げ ゲ ge ご ゴ go ざ ザ za じ ジ zi/ji ず ズ zu ぜ ゼ ze ぞ ゾ zo だ ダ da ぢ ヂ ji/di づ ヅ zu/du で デ de ど ド do ば バ ba び ビ bi ぶ ブ bu べ ベ be ぼ ボ bo ぱ パ pa ぴ ピ pi ぷ プ pu ぺ ペ pe ぽ ポ po きゃ キャ kya きゅ キュ kyu きょ キョ kyo しゃ シャ sya しゅ シュ syu しょ ショ syo ちゃ チャ cya ちゅ チュ cyu ちょ チョ cyo にゃ ニャ nya にゅ ニュ nyu にょ ニョ nyo ひゃ ヒャ hya ひゅ ヒュ hyu ひょ ヒョ hyo みゃ ミャ mya みゅ ミュ myu みょ ミョ myo りゃ リャ rya りゅ リュ ryu りょ リョ ryo ぎゃ ギャ gya ぎゅ ギュ gyu ぎょ ギョ gyo じゃ ジャ zya/ja じゅ ジュ yu/ju じょ ジョzyo/jo びゃ ビャ bya びゅ ビュ byu びょ ビョ byo ぴゃ ピャ pya ぴゅ ピュ pyu ぴょ ピョ pyo
標簽: 日語
上傳時間: 2019-07-19
上傳用戶:sxc1997
已知一個整數序列A=(a0,a1,…,an-1),其中0≤ai<n(0≤i<n)。若存在ap1=ap2=…=apm=x且m>n/2(0≤pk<n,1≤k≤m),則稱x為A的主元素。例如A= ( 0,5,5,3,5,7,5,5 ),則5為主元素;又如A= ( 0,5,5,3,5,1,5,7 ),則A中沒有主元素。 假設A中的n個元素保存在一個一維數組中,請設計一個盡可能高效的算法,找出A的主元素。若存在主元素,則輸出該元素;否則輸出-1。
上傳時間: 2020-03-04
上傳用戶:霖1234
function y=lagr(x0,y0,x) %x0,y0為節點 %x是插值點 n=length(x0); m=length(x); for i=1:m z=x(i); s=0.0; for k=1:n p=1.0; for j=1:n if j~=k p=p*(z-x0(j))/(x0(k)-x0(j)); end end s=p*y0(k)+s; end y(i)=s; end
標簽: lagr
上傳時間: 2020-06-09
上傳用戶:shiyc2020
#include <stdio.h> #include <stdlib.h> #define SMAX 100 typedef struct SPNode { int i,j,v; }SPNode; struct sparmatrix { int rows,cols,terms; SPNode data [SMAX]; }; sparmatrix CreateSparmatrix() { sparmatrix A; printf("\n\t\t請輸入稀疏矩陣的行數,列數和非零元素個數(用逗號隔開):"); scanf("%d,%d,%d",&A.cols,&A.terms); for(int n=0;n<=A.terms-1;n++) { printf("\n\t\t輸入非零元素值(格式:行號,列號,值):"); scanf("%d,%d,%d",&A.data[n].i,&A.data[n].j,&A.data[n].v); } return A; } void ShowSparmatrix(sparmatrix A) { int k; printf("\n\t\t"); for(int x=0;x<=A.rows-1;x++) { for(int y=0;y<=A.cols-1;y++) { k=0; for(int n=0;n<=A.terms-1;n++) { if((A.data[n].i-1==x)&&(A.data[n].j-1==y)) { printf("%8d",A.data[n].v); k=1; } } if(k==0) printf("%8d",k); } printf("\n\t\t"); } } void sumsparmatrix(sparmatrix A) { SPNode *p; p=(SPNode*)malloc(sizeof(SPNode)); p->v=0; int k; k=0; printf("\n\t\t"); for(int x=0;x<=A.rows-1;x++) { for(int y=0;y<=A.cols-1;y++) { for(int n=0;n<=A.terms;n++) { if((A.data[n].i==x)&&(A.data[n].j==y)&&(x==y)) { p->v=p->v+A.data[n].v; k=1; } } } printf("\n\t\t"); } if(k==1) printf("\n\t\t對角線元素的和::%d\n",p->v); else printf("\n\t\t對角線元素的和為::0"); } int main() { int ch=1,choice; struct sparmatrix A; A.terms=0; while(ch) { printf("\n"); printf("\n\t\t 稀疏矩陣的三元組系統 "); printf("\n\t\t*********************************"); printf("\n\t\t 1------------創建 "); printf("\n\t\t 2------------顯示 "); printf("\n\t\t 3------------求對角線元素和"); printf("\n\t\t 4------------返回 "); printf("\n\t\t*********************************"); printf("\n\t\t請選擇菜單號(0-3):"); scanf("%d",&choice); switch(choice) { case 1: A=CreateSparmatrix(); break; case 2: ShowSparmatrix(A); break; case 3: SumSparmatrix(A); break; default: system("cls"); printf("\n\t\t輸入錯誤!請重新輸入!\n"); break; } if (choice==1||choice==2||choice==3) { printf("\n\t\t"); system("pause"); system("cls"); } else system("cls"); } }
上傳時間: 2020-06-11
上傳用戶:ccccy
產品型號:VK36N2D 產品品牌:VINTEK/永嘉 封裝形式:SOP8/DFN8 產品年份:新年份產品 元泰原廠直銷,現貨更有優勢!工程服務,技術支持,讓您的生產高枕無憂。 概述 V K 3 6 N 2 D具有2個觸摸按鍵,可用來檢測外部觸摸按鍵上人手的觸摸動作。該芯片具有較高的集成度,僅需極少的外部組件便可實現觸摸按鍵的檢測。提供了2路直接輸出功能。芯片內部采用特殊的集成電路,具有高電源電壓抑制比,可減少按鍵檢測錯誤的發生,此特性保證在不利環境條件的應用中芯片仍具有很高的可靠性。此觸摸芯片具有自動校準功能,低待機電流,抗電壓波動等特性,為各種觸摸按鍵+IO輸出的應用提供了一種簡單而又有效的實現方法。 特性 ? 工作電壓:2.2V~5.5V ? 低待機電流10uA/3V ? 低壓重置(LVR)電壓2.0V ? 4S自動校準功能 ? 可靠的觸摸按鍵檢測 ? 4S無鍵觸摸進入待機模式 ? 防呆功能長按10S復位 ? 上電0.3S為穩定時間禁止觸摸 ? 具備抗電壓波動功能 ? 上電時OPT腳選擇輸出高有效還是低有效 專用管腳外接電容(1nF-47nF)調整靈敏度 極少的外圍組件 應用領域 ? 移動電源,電子煙等消費類產品 ? 臺燈手電筒等LED照明類產品 ? 墻壁開關等小家電類產品 ? 門禁指紋鎖等安防類產品 我們的優勢: 1:我司為VINTEK/臺灣元泰半導體股份有限公司/VINKA的獨家授權大中華區代理商,產品渠道正宗,確保原裝正品,大量庫存現貨,客戶批量不懼假貨! 2:公司工程力量雄厚,真誠技術服務支持,搭配原廠服務各種應用產品客戶。 3:好價格源自連接原廠直銷,你有量,我有價,確保原裝的好價格。 VK原廠代理:羅小姐 QQ:461366748 TEL:188 2366 3425 優勢代理元泰VKD常用觸控按鍵IC,簡介如下: 標準觸控IC-電池供電系列 VKD223EB --- 工作電壓/電流:2.0V-5.5V/5uA-3V 感應通道數:1 通訊接口 最長響應時間快速模式60mS,低功耗模式220ms 封裝:SOT23-6 VKD223B --- 工作電壓/電流:2.0V-5.5V/5uA-3V 感應通道數:1 通訊接口 最長響應時間快速模式60mS,低功耗模式220ms 封裝:SOT23-6 VKD233DB --- 工作電壓/電流: 2.4V-5.5V/2.5uA-3V 1感應按鍵 封裝:SOT23-6 通訊接口:直接輸出,鎖存(toggle)輸出 低功耗模式電流2.5uA-3V VKD233DH ---工作電壓/電流: 2.4V-5.5V/2.5uA-3V 1感應按鍵 封裝:SOT23-6 通訊接口:直接輸出,鎖存(toggle)輸出 有效鍵最長時間檢測16S VKD233DS --- 工作電壓/電流: 2.4V-5.5V/2.5uA-3V 1感應按鍵 封裝:DFN6(2*2超小封裝) 通訊接口:直接輸出,鎖存(toggle)輸出 低功耗模式電流2.5uA-3V VKD233DR --- 工作電壓/電流: 2.4V-5.5V/1.5uA-3V 1感應按鍵 封裝:DFN6(2*2超小封裝) 通訊接口:直接輸出,鎖存(toggle)輸出 低功耗模式電流1.5uA-3V VKD233DG --- 工作電壓/電流: 2.4V-5.5V/2.5uA-3V 1感應按鍵 封裝:DFN6(2*2超小封裝) 通訊接口:直接輸出,鎖存(toggle)輸出 低功耗模式電流2.5uA-3V VKD233DQ --- 工作電壓/電流: 2.4V-5.5V/5uA-3V 1感應按鍵 封裝:SOT23-6 通訊接口:直接輸出,鎖存(toggle)輸出 低功耗模式電流5uA-3V VKD233DM --- 工作電壓/電流: 2.4V-5.5V/5uA-3V 1感應按鍵 封裝:SOT23-6 (開漏輸出) 通訊接口:開漏輸出,鎖存(toggle)輸出 低功耗模式電流5uA-3V VKD232C --- 工作電壓/電流: 2.4V-5.5V/2.5uA-3V 感應通道數:2 封裝:SOT23-6 通訊接口:直接輸出,低電平有效 固定為多鍵輸出模式,內建穩壓電路 (元泰原廠授權 原裝正品保障 工程技術支持 大量現貨庫存) 標準觸控IC-—多鍵觸摸通道系列 VKD104BR --- 工作電壓/電流:2.4V-5.5V/13uA-3V 感應通道數/按鍵數:2 通訊接口:直接輸出, toggle輸出 封裝:SOP-8 VKD104 --- 工作電壓/電流:2.4V-5.5V/13uA-3V 感應通道數/按鍵數:4 通訊接口:直接輸出, 鎖存輸出,開漏輸出 封裝:DICE VKD104BC --- 工作電壓/電流:2.4V-5.5V/13uA-3V 感應通道數/按鍵數:4 通訊接口:直接輸出,鎖存輸出,開漏輸出 封裝:SOP-16 VKD104SB --- 工作電壓/電流:2.4V-5.5V/13uA-3V 感應通道數/按鍵數:4 通訊接口:直接輸出,鎖存輸出,開漏輸出 封裝:SSOP-16 VKD1016B --- 工作電壓/電流:2.4V-5.5V/20uA-3V 感應通道數/按鍵數:16-8 通訊接口:直接輸出,鎖存輸出,開漏輸出 封裝:SSOP-28 VKD1016L --- 工作電壓/電流:2.4V-5.5V/20uA-3V 感應通道數/按鍵數:16-8 通訊接口:直接輸出,鎖存輸出,開漏輸出 封裝:SSOP-28 (元泰原廠授權 原裝正品保障 工程技術支持 大量現貨庫存) 標準觸控IC——VK36電源供電抗干擾系列 VK3601S --- 工作電壓/電流:2.4V-5.5V/4mA-3.3V 感應通道數:1 通訊接口:1 INPUT/1PWM OUT 封裝:SOP-8 VK3608BM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:8 通訊接口:BCD碼直接輸出 封裝:SOP-16 VK3606DM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:6 通訊接口:1對1直接輸出 封裝:SOP-16 VK3606OM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:6 通訊接口:1對1開漏輸出 封裝:SOP-16 VK3610IM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:10 通訊接口:SCL/SDA/INT通訊口 封裝:SOP-16 標準觸控IC——VK37低功耗抗干擾系列 VK3702DM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:2 通訊接口:1對1直接輸出 封裝:SOP-8 VK3702OM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:2 通訊接口:1對1開漏輸出 封裝:SOP-8 VK3702TM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:2 通訊接口:1對1toggle輸出 封裝:SOP-8 VK3706DM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:6 通訊接口:1對1直接輸出 封裝:SOP-16 VK3706OM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:6 通訊接口:1對1開漏輸出 封裝:SOP-16 VK3708BM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:8 通訊接口:BCD碼直接輸出 封裝:SOP-16 VK3710IM --- 工作電壓/電流:3.1V-5.5V/ 3mA-5V 感應通道數:10 通訊接口:SCL/SDA/INT通訊口 封裝:SOP-16 標準觸控IC——VK38帶滑條抗干擾系列 VK3809IP --- 工作電壓/電流:2.5V-5.5V/1.1mA-3V 感應通道數:9 通訊接口:IIC/INT通訊口 封裝:SSOP-16 VK3813IP --- 工作電壓/電流:2.5V-5.5V/1.1mA-3V 感應通道數:13 通訊接口:IIC/INT通訊口 封裝:SSOP-20 VK3816IP --- 工作電壓/電流:2.5V-5.5V/1.1mA-3V 感應通道數:16 通訊接口:IIC/INT通訊口 封裝:SSOP-28 VK3816IP-A --- 工作電壓/電流:2.5V-5.5V/1.1mA-3V 感應通道數:16 通訊接口:IIC/INT通訊口 封裝:SSOP-28 (元泰原廠授權 原裝正品保障 工程技術支持 大量現貨庫存) MTP觸摸 IC——VK36N系列抗電源輻射及手機干擾 VK3601L --- 工作電壓/電流:2.4V-5.5V/4UA-3V3 感應通道數:1 1對1直接輸出 待機電流小,抗電源及手機干擾,可通過CAP調節靈敏 封裝:SOT23-6 VK36N1D --- 工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:1 1對1直接輸出 觸摸積水仍可操作,抗電源及手機干擾,可通過CAP調節靈敏 封裝:SOT23-6 VK36N2P --- 工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:2 脈沖輸出 觸摸積水仍可操作,抗電源及手機干擾,可通過CAP調節靈敏 封裝:SOT23-6 VK3602XS ---工作電壓/電流:2.4V-5.5V/60UA-3V 感應通道數:2 2對2鎖存輸出 低功耗模式電流8uA-3V,抗電源輻射干擾,寬供電電壓 封裝:SOP8 VK3602K --- 工作電壓/電流:2.4V-5.5V/60UA-3V 感應通道數:2 2對2直接輸出 低功耗模式電流8uA-3V,抗電源輻射干擾,寬供電電壓 封裝:SOP8 VK36N2D --- 工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:2 1對1直接輸出 觸摸積水仍可操作,抗電源及手機干擾,可通過CAP調節靈敏 封裝:SOP8 VK36N3BT ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:3 BCD碼鎖存輸出 觸摸積水仍可操作,抗電源及手機干擾,可通過CAP調節靈敏 封裝:SOP8 VK36N3BD ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:3 BCD碼直接輸出 觸摸積水仍可操作,抗電源及手機干擾,可通過CAP調節靈敏 封裝:SOP8 VK36N3BO ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:3 BCD碼開漏輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP8/DFN8(超小超薄體積) VK36N3D --- 工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:3 1對1直接輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N4B ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:4 BCD輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N4I---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:4 I2C輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N5D ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:5 1對1直接輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N5B ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:5 BCD輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N5I ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:5 I2C輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N6D --- 工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:6 1對1直接輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N6B ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:6 BCD輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N6I ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:6 I2C輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N7B ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:7 BCD輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N7I ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:7 I2C輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N8B ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:8 BCD輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N8I ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:8 I2C輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N9I ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:9 I2C輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) VK36N10I ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:10 I2C輸出 觸摸積水仍可操作,抗電源及手機干擾 封裝:SOP16/DFN16(超小超薄體積) (元泰原廠授權 原裝正品保障 工程技術支持 大量現貨庫存) 1-8點高靈敏度 液體水位檢測IC——VK36W系列 VK36W1D ---工作電壓/電流:2.2V-5.5V/10UA-3V3 1對1直接輸出 水位檢測通道:1 可用于不同壁厚和不同水質水位檢測,抗電源/手機干擾 封裝:SOT23-6 備注:1. 開漏輸出低電平有效 2、適合需要抗干擾性好的產品應用 VK36W2D ---工作電壓/電流:2.2V-5.5V/10UA-3V3 1對1直接輸出 水位檢測通道:2 可用于不同壁厚和不同水質水位檢測,抗電源/手機干擾 封裝:SOP8 備注:1. 1對1直接輸出 2、輸出模式/輸出電平可通過IO選擇 VK36W4D ---工作電壓/電流:2.2V-5.5V/10UA-3V3 1對1直接輸出 水位檢測通道:4 可用于不同壁厚和不同水質水位檢測,抗電源/手機干擾 封裝:SOP16/DFN16 備注:1. 1對1直接輸出 2、輸出模式/輸出電平可通過IO選擇 VK36W6D ---工作電壓/電流:2.2V-5.5V/10UA-3V3 1對1直接輸出 水位檢測通道:6 可用于不同壁厚和不同水質水位檢測,抗電源/手機干擾 封裝:SOP16/DFN16 備注:1. 1對1直接輸出 2、輸出模式/輸出電平可通過IO選擇 VK36W8I ---工作電壓/電流:2.2V-5.5V/10UA-3V3 I2C輸出 水位檢測通道:8 可用于不同壁厚和不同水質水位檢測,抗電源/手機干擾 封裝:SOP16/DFN16 備注:1. IIC+INT輸出 2、輸出模式/輸出電平可通過IO選擇 *水位檢測芯片可用于需要檢測水位,缺水,溢出等場合。適合應用于飲水機、凈飲機、咖啡機、水壺、洗碗機、制冰機等水相關家用電器和電子產品。 測試環境:在一個玻璃容器外壁(玻璃1-5毫米不等),通過雙面電子導熱硅膠,把水位檢測PCB直接貼在玻璃上面檢測水位。 簡介: VK36W水位檢測系列是抗干擾能力強,穿透能力高的水位檢測專用觸摸芯片。 擁有1-8點檢測點,適合于多種應用段位檢測。封裝為SOT23-6,SOP8,SOP16 上電就能檢測水位點是否有水,水從無水到有水,從有水到無水,都可以檢測出來。 檢測時可以不接觸到水(隔空)在水箱外面檢測到水位,也可以用金屬探針接觸到水來檢測水位。 在高干擾或者AC開關電源的應用中也可以正常工作。 應用于多種液體水位檢測產品,檢測缺水,水位,溢水等多種場景 列如: 1:智能馬桶蓋,抽水馬桶,水蒸鍋,凈水機,空調扇,洗碗機,加濕器,咖啡機,飲水機,制冰機,魚 缸加熱棒,浮水器,浴缸,潔具 ---- 家用家電系列 2:植物盆溢水,香薰機,負離子發生器,水位漏水溢水報警器等智能家居產品。 3:水杯,儲水器等液位檢測杯 4:空氣凈化器,加濕器,霧化器等環境凈化設備 PWM應用(LED調光)IC——VK36S系列防水抗干擾 VK36S1 --- 工作電壓/電流:2.2V-5.5V/7UA PWN+指示燈輸出 水位檢測通道:1 應用于臺燈及LED調光場合,抗電源/手機干擾,防水 封裝:SOT23-6 1鍵觸摸PWN輸出調光,單擊開關機,長按調光,指示燈輸出專用引腳 VK36S2S --- 工作電壓/電流:2.2V-5.5V/7UA PWN+指示燈輸出 水位檢測通道:2 應用于臺燈及LED調光場合,抗電源/手機干擾,防水 封裝:SOT23-6 2鍵觸摸PWN輸出調光,一個按鍵為開/關機,長按調光,低電平有效 VK3601SS ---工作電壓/電流:2.4V-5.5V/4MA-3.3V 1路PWN輸出 水位檢測通道:1 可選擇無級和3段調光,PWM=20KH,抗電源/手機干擾, 封裝:SOP8 1鍵觸摸單路調光 無級調光時可選擇不斷電記憶和亮度緩沖功能 VK36S1R --- 工作電壓/電流:2.2V-5.5V/7UA RGB七彩燈燈輸出 水位檢測通道:1 應用于臺燈及LED調光場合,抗電源/手機干擾,防水, 封裝:SOP8 1鍵觸摸按鍵+1路指示燈輸出,單擊開關機,長按調光,RGB七彩燈燈輸出 VK36S1S --- 工作電壓/電流:2.2V-5.5V/7UA PWM+雙指示燈輸出 水位檢測通道:1 應用于臺燈及LED調光場合,抗電源/手機干擾,防水, 封裝:SOP8 1鍵觸摸+雙路指示燈輸出,1路PWM+1路指示燈輸出,多種調光可通過引腳選擇 VK36S2S --- 工作電壓/電流:2.2V-5.5V/7UA PWM+雙指示燈輸出 水位檢測通道:2 應用于臺燈及LED調光場合,抗電源/手機干擾,防水, 封裝:SOP8 2鍵觸摸,1鍵開關/1鍵調光,低電平有效,多種調光可通過引腳選擇 VK36S2D --- 工作電壓/電流:2.2V-5.5V/7UA 雙路PWM+指示燈輸出 水位檢測通道:2 應用于臺燈及LED調光場合,抗電源/手機干擾,防水, 封裝:SOP8 2鍵觸摸,1鍵開關/1鍵調光,1路PWM輸出,低電平有效,指示燈引腳輸出 VK36S3D --- 工作電壓/電流:2.2V-5.5V/7UA 雙路PWM輸出 水位檢測通道:3 應用于臺燈及LED調光場合,抗電源/手機干擾,防水, 封裝:SOP8 3鍵觸摸,1鍵開關/1鍵調光/1鍵調色溫,低電平有效,指示燈引腳輸出 VK36S9S --- 工作電壓/電流:2.2V-5.5V/7UA 1路PWM輸出 水位檢測通道:9 應用于照明調光,抗電源/手機干擾,觸摸積水仍可操作 封裝:SOP16 9鍵觸摸,1鍵開機/8鍵滑條調光,1路PWM輸出,1路指示燈輸出 VK36S9D --- 工作電壓/電流:2.2V-5.5V/7UA 2路PWM輸出 水位檢測通道:9 應用于照明調光,抗電源/手機干擾,觸摸積水仍可操作 封裝:SOP16 9鍵觸摸,1鍵開機/8鍵滑條調光調色溫,1路指示燈輸出,多種模式可選 (元泰原廠授權 原裝正品保障 工程技術支持 大量現貨庫存) 可編程觸摸IC-VK54M系列 VK54M2 --- 工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:2 IO:3 PWM:2 防水,抗電源及手機干擾,多種低功耗模式,LVR多級可選(2.0V/2.7V)封裝:SOT23-6 VK54M3A ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:3 IO:5 PWM:4 防水,抗電源及手機干擾,多種低功耗模式,LVR多級可選(2.0V/2.7V)封裝:SOP8A VK54M3B ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:3 IO:5 PWM:4 防水,抗電源及手機干擾,多種低功耗模式,LVR多級可選(2.0V/2.7V)封裝:SOP8B VK54M3C ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:3 IO:5 PWM:4 防水,抗電源及手機干擾,多種低功耗模式,LVR多級可選(2.0V/2.7V)封裝:SOP8B VK54M10 ---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:10 IO:13 PWM:5 I2C:從機 防水,抗電源及手機干擾,多種低功耗模式,LVR多級可選(2.0V/2.7V)封裝:SOP16 VK54M310B---工作電壓/電流:2.2V-5.5V/7UA-3V3 感應通道數:10 IO:13 PWM:5 I2C:從機 防水,抗電源及手機干擾,多種低功耗模式,LVR多級可選(2.0V/2.7V)封裝:DFN16 (所有型號全部封裝均有現貨,歡迎加Q查詢 461366748 羅小姐) 以上介紹內容為IC參數簡介,難免有錯漏,且相關IC型號眾多,未能一一收錄。歡迎聯系索取完整資料及樣品! 生意無論大小,做人首重誠信!本公司全體員工將既往開來,再接再厲。爭取為各位帶來更專業的技術支持,更優質的銷售服務,更高性價比的好產品.竭誠希望能與各位客戶朋友深入溝通,攜手共進,共同成長,合作共贏!謝謝。
標簽: 抗電源干擾性好 應用大小家電娛樂產品
上傳時間: 2020-06-11
上傳用戶:shubashushi66
#include<iostream> using namespace std; int s=0; int prime(int x){ int i,p=1; for(i=2;i<=x/2;i++){ if(x%i==0){ p=0; break; } } if(p!=0){ cout<<x<< " "; s++; } } int main(){ for (int k=5;k<=100;k++){ prime(k); if(s%5==0) cout<<'\n'; } return 0; }
標簽: C++
上傳時間: 2020-06-30
上傳用戶:1274636550