實驗源代碼 //Warshall.cpp #include<stdio.h> void warshall(int k,int n) { int i , j, t; int temp[20][20]; for(int a=0;a<k;a++) { printf("請輸入矩陣第%d 行元素:",a); for(int b=0;b<n;b++) { scanf ("%d",&temp[a][b]); } } for(i=0;i<k;i++){ for( j=0;j<k;j++){ if(temp[ j][i]==1) { for(t=0;t<n;t++) { temp[ j][t]=temp[i][t]||temp[ j][t]; } } } } printf("可傳遞閉包關系矩陣是:\n"); for(i=0;i<k;i++) { for( j=0;j<n;j++) { printf("%d", temp[i][ j]); } printf("\n"); } } void main() { printf("利用 Warshall 算法求二元關系的可傳遞閉包\n"); void warshall(int,int); int k , n; printf("請輸入矩陣的行數 i: "); scanf("%d",&k); 四川大學實驗報告 printf("請輸入矩陣的列數 j: "); scanf("%d",&n); warshall(k,n); }
上傳時間: 2016-06-27
上傳用戶:梁雪文以
#include "iostream" using namespace std; class Matrix { private: double** A; //矩陣A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //為向量b分配空間并初始化為0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //為向量A分配空間并初始化為0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析構中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"請輸入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"請輸入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"個:"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分別求得U,L的第一行與第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分別求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"計算U得:"<<endl; U.Disp(); cout<<"計算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
標簽: 道理特分解法
上傳時間: 2018-05-20
上傳用戶:Aa123456789
#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
上傳用戶:啊的撒旦
描述 分數a/b化為小數后,小數點后第n位的數字是多少? 其中0 < a < b < 100,1≤n≤10000。 格式 輸入格式 三個正整數a,b,n,相鄰兩個數之間用單個空格隔開。 輸出格式 一個數字
標簽: c語言
上傳時間: 2020-05-03
上傳用戶:h149
產品型號:VK2C21A/B/C/D 產品品牌:永嘉微電/VINKA 封裝形式:SOP28/24/20/16 產品年份:新年份 聯系人:陳先生 聯系手機:188& 2466& 2436 (加V) 企鵝號:361& 888& 5898 E-mail:crh_chip@163.com 原廠直銷,工程服務,技術支持,價格最具優勢! VK2C21A/B/C/D概述: VK2C21是一個點陣式存儲映射的LCD驅動器,可支持最大80點(20SEGx4COM)或者最大128點(16SEGx8COM)的LCD屏。單片機可通過I2C接口配置顯示參數和讀寫顯示數據,也可通過指令進入省電模式。其高抗干擾,低功耗的特性適用于水電氣表以及工控儀表類產品。 特點: ★ 工作電壓 2.4-5.5V ★ 內置32 kHz RC振蕩器 ★ 偏置電壓(BIAS)可配置為1/3、1/4 ★ COM周期(DUTY)可配置為1/4、1/8 ★ 內置顯示RAM為20x4位、16x8位 ★ 幀頻可配置為80Hz、160Hz ★ 省電模式(通過關顯示和關振蕩器進入)??? ★ I2C通信接口 ★ 顯示模式20x4、16x8 ★ 3種顯示整體閃爍頻率 ★ 軟件配置LCD顯示參數 ★ 讀寫顯示數據地址自動加1 ★ VLCD腳提供LCD驅動電壓源(<VDD) ★ 內置16級LCD驅動電壓調整電路 ★ 內置上電復位電路(POR) ★ 低功耗、高抗干擾 —————————————————————————————————— 產品型號:VK2C22A/B 產品品牌:永嘉微電/VINKA 封裝形式:LQFP52/48 產品年份:新年份 原廠直銷,工程服務,技術支持,價格最具優勢! VK2C22A/B概述: VK2C22A/B是一個點陣式存儲映射的LCD驅動器,可支持最大176點(44SEGx4COM)的LCD屏。單片機可通過I2C接口配置顯示參數和讀寫顯示數據,也可通過指令進入省電模式。其高抗干擾,低功耗的特性適用于水電氣表以及工控儀表類產品。 特點: ★ 工作電壓 2.4-5.5V ★ 內置32 kHz RC振蕩器 ★ 偏置電壓(BIAS)可配置為1/2、1/3 ★ COM周期(DUTY)為1/4 ★ 內置顯示RAM為44x4位 ★ 幀頻可配置為80Hz、160Hz ★ 省電模式(通過關顯示和關振蕩器進入)??? ★ I2C通信接口 ★ 顯示模式44x4 ★ 3種顯示整體閃爍頻率 ★ 軟件配置LCD顯示參數 ★ 讀寫顯示數據地址自動加1 ★ VLCD腳提供LCD驅動電壓源(<5.5V) ★ 內置16級LCD驅動電壓調整電路 ★ 內置上電復位電路(POR) ★ 低功耗、高抗干擾 —————————————————————————————————— 產品型號:VK2C23A/B 產品品牌:永嘉微電/VINKA 封裝形式:LQFP64/48 產品年份:新年份 原廠直銷,工程服務,技術支持,價格最具優勢! VK2C23A/B概述: VK2C23A/B是一個點陣式存儲映射的LCD驅動器,可支持最大224點(56SEGx4COM)或者最大416點(52SEGx8COM)的LCD屏。單片機可通過I2C接口配置顯示參數和讀寫顯示數據,也可通過指令進入省電模式。其高抗干擾,低功耗的特性適用于水電氣表以及工控儀表類產品。 特點: ★ 工作電壓 2.4-5.5V ★ 內置32 kHz RC振蕩器 ★ 偏置電壓(BIAS)可配置為1/3、1/4 ★ COM周期(DUTY)可配置為1/4、1/8 ★ 內置顯示RAM為56x4位、52x8位 ★ 幀頻可配置為80Hz、160Hz ★ 省電模式(通過關顯示和關振蕩器進入)??? ★ I2C通信接口 ★ 顯示模式56x4、52x8 ★ 3種顯示整體閃爍頻率 ★ 軟件配置LCD顯示參數 ★ 讀寫顯示數據地址自動加1 ★ VLCD腳提供LCD驅動電壓源(<5.5V) ★ 內置16級LCD驅動電壓調整電路 ★ 內置上電復位電路(POR) ★ 低功耗、高抗干擾 —————————————————————————————————— 產品型號:VK2C24A/B 產品品牌:永嘉微電/VINKA 封裝形式:LQFP80/64 產品年份:新年份 原廠直銷,工程服務,技術支持,價格最具優勢! VK2C24A/B概述: VK2C24A/B是一個點陣式存儲映射的LCD驅動器,可支持最大288點(72SEGx4COM)或者最大544點(68SEGx8COM)或者最大960點(60SEGx16COM)的LCD屏。單片機可通過I2C接口配置顯示參數和讀寫顯示數據,也可通過指令進入省電模式。其高抗干擾,低功耗的特性適用于水電氣表以及工控儀表類產品。 特點: ★ 工作電壓 2.4-5.5V ★ 內置32 kHz RC振蕩器 ★ 偏置電壓(BIAS)可配置為1/3、1/4、1/5 ★ COM周期(DUTY)可配置為1/4、1/8、1/16 ★ 內置顯示RAM為72x4位、68x8位、60x16位 ★ 幀頻可配置為80Hz、160Hz ★ 省電模式(通過關顯示和關振蕩器進入)??? ★ I2C通信接口 ★ 顯示模式72x4、68x8、60x8 ★ 3種顯示整體閃爍頻率 ★ 軟件配置LCD顯示參數 ★ 讀寫顯示數據地址自動加1 ★ VLCD腳提供LCD驅動電壓源(<5.5V) ★ 內置16級LCD驅動電壓調整電路 ★ 內置上電復位電路(POR) ★ 低功耗、高抗干擾 ★ 此篇產品敘述為功能簡介,如需要完整產品PDF資料可以聯系陳先生索取! —————————————————————————————————— LCD/LED液晶控制器及驅動器系列芯片簡介如下: RAM映射LCD控制器和驅動器系列: VK1024B 2.4V~5.2V 6seg*4com 6*3 6*2 偏置電壓1/2 1/3 S0P-16 VK1056B 2.4V~5.2V 14seg*4com 14*3 14*2 偏置電壓1/2 1/3 SOP-24/SSOP-24 VK1072B 2.4V~5.2V 18seg*4com 18*3 18*2 偏置電壓1/2 1/3 SOP-28 VK1072C 2.4V~5.2V 18seg*4com 18*3 18*2 偏置電壓1/2 1/3 SOP-28 VK1088B 2.4V~5.2V 22seg*4com 22*3 偏置電壓1/2 1/3 QFN-32L(4MM*4MM) VK0192 2.4V~5.2V 24seg*8com 偏置電壓1/4 LQFP-44 VK0256 2.4V~5.2V 32seg*8com 偏置電壓1/4 QFP-64 VK0256B 2.4V~5.2V 32seg*8com 偏置電壓1/4 LQFP-64 VK0256C 2.4V~5.2V 32seg*8com 偏置電壓1/4 LQFP-52 VK1621 2.4V~5.2V 32*4 32*3 32*2 偏置電壓1/2 1/3 LQFP44/48/SSOP48/SKY28/DICE裸片 VK1622 2.7V~5.5V 32seg*8com 偏置電壓1/4 LQFP44/48/52/64/QFP64/DICE裸片 VK1623 2.4V~5.2V 48seg*8com 偏置電壓1/4 LQFP-100/QFP-100/DICE裸片 VK1625 2.4V~5.2V 64seg*8com 偏置電壓1/4 LQFP-100/QFP-100/DICE VK1626 2.4V~5.2V 48seg*16com 偏置電壓1/5 LQFP-100/QFP-100/DICE (高品質 高性價比:液晶顯示驅動IC 原廠直銷 工程技術支持! 高抗干擾LCD液晶控制器及驅動系列: VK2C21A 2.4~5.5V 20seg*4com 16*8 偏置電壓1/3 1/4 I2C通訊接口 SOP-28 VK2C21B 2.4~5.5V 16seg*4com 12*8 偏置電壓1/3 1/4 I2C通訊接口 SOP-24 VK2C21C 2.4~5.5V 12seg*4com 8*8 偏置電壓1/3 1/4 I2C通訊接口 SOP-20 VK2C21D 2.4~5.5V 8seg*4com 4*8 偏置電壓1/3 1/4 I2C通訊接口 SOP-16 VK2C22A 2.4~5.5V 44seg*4com 偏置電壓1/2 1/3 I2C通訊接口 LQFP-52 VK2C22B 2.4~5.5V 40seg*4com 偏置電壓1/2 1/3 I2C通訊接口 LQFP-48 VK2C23A 2.4~5.5V 56seg*4com 52*8 偏置電壓1/3 1/4 I2C通訊接口 LQFP-64 VK2C23B 2.4~5.5V 36seg*8com 偏置電壓1/31/4 I2C通訊接口 LQFP-48 VK2C24 2.4~5.5V 72seg*4com 68*8 60*16 偏置電壓1/3 1/4 1/5 I2C通訊接口 LQFP-80 超低功耗LCD液晶控制器及驅動系列: VKL060 2.5~5.5V 15seg*4com 偏置電壓1/2 1/3 I2C通訊接口 SSOP-24 VKL128 2.5~5.5V 32seg*4com 偏置電壓1/2 1/3 I2C通訊接口 LQFP-44 VKL144A 2.5~5.5V 36seg*4com 偏置電壓1/2 1/3 I2C通訊接口 TSSOP-48 VKL144B 2.5~5.5V 36seg*4com 偏置電壓1/2 1/3 I2C通訊接口 QFN48L (6MM*6MM) 靜態顯示LCD液晶控制器及驅動系列: VKS118 2.4~5.2V 118seg*2com 偏置電壓 -- 4線通訊接口 LQFP-128 VKS232 2.4~5.2V 116seg*2com 偏置電壓1/1 1/2 4線通訊接口 LQFP-128 永嘉微電/VINKA原廠直銷,工程服務技術支持,主營LCD/LED驅動IC/觸摸IC __________________________________________________________________________________________________ 內存映射的LED控制器及驅動器: VK1628 --- 通訊接口:STB/CLK/DIO 電源電壓:5V(4.5~5.5V) 驅動點陣:70/52 共陰驅動:10段7位/13段4位 共陽驅動:7段10位 按鍵:10x2 封裝SOP28 VK1638--- VK1S38A--- VK1629 --- 通訊接口:STB/CLK/DIN/DOUT 電源電壓:5V(4.5~5.5V) 驅動點陣:128共陰驅動:16段8位 共陽驅動:8段16位 按鍵:8x4 封裝QFP44 VK1629A --- 通訊接口:STB/CLK/DIO 電源電壓:5V(4.5~5.5V) 驅動點陣:128共陰驅動:16段8位 共陽驅動:8段16位 按鍵:--- 封裝SOP32 VK1629B --- 通訊接口:STB/CLK/DIO 電源電壓:5V(4.5~5.5V) 驅動點陣:112 共陰驅動:14段8位 共陽驅動:8段14位 按鍵:8x2 封裝SOP32 VK1629C --- 通訊接口:STB/CLK/DIO 電源電壓:5V(4.5~5.5V) 驅動點陣:120 共陰驅動:15段8位 共陽驅動:8段15位 按鍵:8x1 封裝SOP32 VK1629D --- 通訊接口:STB/CLK/DIO 電源電壓:5V(4.5~5.5V) 驅動點陣:96 共陰驅動:12段8位 共陽驅動:8段12位 按鍵:8x4 封裝SOP32 VK1640 --- 通訊接口: CLK/DIN 電源電壓:5V(4.5~5.5V) 驅動點陣:128共陰驅動:8段16位 共陽驅動:16段8位 按鍵:--- 封裝SOP28 VK1650 --- 通訊接口: SCL/SDA 電源電壓:5V(3.0~5.5V) 驅動點陣:8x16共陰驅動:8段4位 共陽驅動:4段8位 按鍵:7x4 封裝SOP16/DIP16 VK1668 ---通訊接口:STB/CLK/DIO 電源電壓:5V(4.5~5.5V) 驅動點陣:70/52共陰驅動:10段7位/13段4位 共陽驅動:7段10位 按鍵:10x2 封裝SOP24 VK6932 --- 通訊接口:STB/CLK/DIN 電源電壓:5V(4.5~5.5V) 驅動點陣:128共陰驅動:8段16位17.5/140mA 共陽驅動:16段8位 按鍵:--- 封裝SOP32 VK16K33 --- 通訊接口:SCL/SDA 電源電壓:5V(4.5V~5.5V) 驅動點陣:128/96/64 共陰驅動:16段8位/12段8位/8段8位 共陽驅動:8段16位/8段12位/8段8位按鍵:13x3 10x3 8x3 封裝SOP20/SOP24/SOP2 永嘉微電/VINKA原廠直銷,工程服務技術支持,主營LCD/LED驅動IC/觸摸IC 觸摸觸控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 通訊接口:直接輸出,低電平有效 固定為多鍵輸出模式,內建穩壓電路 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 &n
上傳時間: 2021-11-25
上傳用戶:15218646864
產品型號:VK2C21A/B/C/D 產品品牌:永嘉微電/VINKA 封裝形式:SOP28/24/20/16 產品年份:新年份 聯系人:陳先生 聯系手機:188& 2466& 2436 (加V) 企鵝號:361& 888& 5898 E-mail:crh_chip@163.com 原廠直銷,工程服務,技術支持,價格最具優勢! VK2C21A/B/C/D概述: VK2C21是一個點陣式存儲映射的LCD驅動器,可支持最大80點(20SEGx4COM)或者最大128點(16SEGx8COM)的LCD屏。單片機可通過I2C接口配置顯示參數和讀寫顯示數據,也可通過指令進入省電模式。其高抗干擾,低功耗的特性適用于水電氣表以及工控儀表類產品。 特點: ★ 工作電壓 2.4-5.5V ★ 內置32 kHz RC振蕩器 ★ 偏置電壓(BIAS)可配置為1/3、1/4 ★ COM周期(DUTY)可配置為1/4、1/8 ★ 內置顯示RAM為20x4位、16x8位 ★ 幀頻可配置為80Hz、160Hz ★ 省電模式(通過關顯示和關振蕩器進入)??? ★ I2C通信接口 ★ 顯示模式20x4、16x8 ★ 3種顯示整體閃爍頻率 ★ 軟件配置LCD顯示參數 ★ 讀寫顯示數據地址自動加1 ★ VLCD腳提供LCD驅動電壓源(<VDD) ★ 內置16級LCD驅動電壓調整電路 ★ 內置上電復位電路(POR) ★ 低功耗、高抗干擾 ★ 此篇產品敘述為功能簡介,如需要完整產品PDF資料可以聯系陳先生索取!
標簽: VK2 2C VK VK2C LCD C21 C22 C23 C24 21
上傳時間: 2021-12-02
上傳用戶:15218646864
產品型號:VK2C23A/B 產品品牌:永嘉微電/VINKA 封裝形式:LQFP64/48 產品年份:新年份 聯系人:陳先生 聯系手機:188& 2466& 2436 (加V) 企鵝號:361& 888& 5898 E-mail:crh_chip@163.com 原廠直銷,工程服務,技術支持,價格最具優勢! VK2C23A/B概述: VK2C23A/B是一個點陣式存儲映射的LCD驅動器,可支持最大224點(56SEGx4COM)或者最大416點(52SEGx8COM)的LCD屏。單片機可通過I2C接口配置顯示參數和讀寫顯示數據,也可通過指令進入省電模式。其高抗干擾,低功耗的特性適用于水電氣表以及工控儀表類產品。 特點: ★ 工作電壓 2.4-5.5V ★ 內置32 kHz RC振蕩器 ★ 偏置電壓(BIAS)可配置為1/3、1/4 ★ COM周期(DUTY)可配置為1/4、1/8 ★ 內置顯示RAM為56x4位、52x8位 ★ 幀頻可配置為80Hz、160Hz ★ 省電模式(通過關顯示和關振蕩器進入)??? ★ I2C通信接口 ★ 顯示模式56x4、52x8 ★ 3種顯示整體閃爍頻率 ★ 軟件配置LCD顯示參數 ★ 讀寫顯示數據地址自動加1 ★ VLCD腳提供LCD驅動電壓源(<5.5V) ★ 內置16級LCD驅動電壓調整電路 ★ 內置上電復位電路(POR) ★ 低功耗、高抗干擾 ★ 此篇產品敘述為功能簡介,如需要完整產品PDF資料可以聯系陳先生索取!
標簽: LCD C23 VK2 2C 23 VK 抗干擾 液晶顯示 驅動芯片 選型
上傳時間: 2021-12-03
上傳用戶:15218646864
1. 目的 規范產品的PCB焊盤設計工藝, 規定PCB焊盤設計工藝的相關參數,使得PCB 的設計滿足可生產性、可測試性、安規、EMC、EMI 等的技術規范要求,在產品設計過程中構建產品的工藝、技術、質量、成本優勢。 2. 適用范圍本規范適用于空調類電子產品的PCB 工藝設計,運用于但不限于PCB 的設計、PCB 批產工藝審查、單板工藝審查等活動。本規范之前的相關標準、規范的內容如與本規范的規定相抵觸的,以本規范為準3.引用/參考標準或資料TS-S0902010001 <〈信息技術設備PCB 安規設計規范〉>TS—SOE0199001 <〈電子設備的強迫風冷熱設計規范〉〉TS—SOE0199002 〈<電子設備的自然冷卻熱設計規范>>IEC60194 〈<印制板設計、制造與組裝術語與定義>> (Printed Circuit Board designmanufacture and assembly-terms and definitions)IPC—A-600F 〈<印制板的驗收條件>〉 (Acceptably of printed board)IEC609504。規范內容4。1焊盤的定義 通孔焊盤的外層形狀通常為圓形、方形或橢圓形。具體尺寸定義詳述如下,名詞定義如圖所示。1) 孔徑尺寸:若實物管腳為圓形:孔徑尺寸(直徑)=實際管腳直徑+0。20∽0。30mm(8。0∽12。0MIL)左右;若實物管腳為方形或矩形:孔徑尺寸(直徑)=實際管腳對角線的尺寸+0.10∽0。20mm(4.0∽8。0MIL)左右。2) 焊盤尺寸: 常規焊盤尺寸=孔徑尺寸(直徑)+0.50mm(20.0 MIL)左右.…………
標簽: PCB
上傳時間: 2022-05-24
上傳用戶:canderile
特點: 精確度0.1%滿刻度 可作各式數學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A|/ 16 BIT類比輸出功能 輸入與輸出絕緣耐壓2仟伏特/1分鐘(input/output/power) 寬范圍交直流兩用電源設計 尺寸小,穩定性高
上傳時間: 2014-12-23
上傳用戶:ydd3625