WPF实例系列一:登录、注册界面设计

article/2025/10/12 23:42:39

WPF实例系列一:登录、注册界面设计


文章目录

  • WPF实例系列一:登录、注册界面设计
  • 前言
  • 一、实例演示
    • 1. 登录界面展示
    • 2. 注册界面展示
    • 3. 数据存储
    • 4. 效果演示
  • 二、结构及源码
    • 1.主界面跳转登录界面设计
    • 2.登录界面设计
    • 3.注册界面设计
    • 4.Excel保存数据类设计
    • 5.源码
  • 三、补充
    • 1.增加Mysql数据库存储账户数据


前言

本实例将展示利用WPF设计登录界面、注册界面,并实现相应的功能,其中账户数据将存储在excel表中(补充:增加Mysql数据库存储账户数据)。


一、实例演示

1. 登录界面展示

​​​在这里插入图片描述

2. 注册界面展示

在这里插入图片描述

3. 数据存储

在这里插入图片描述

4. 效果演示

在这里插入图片描述

二、结构及源码

1.主界面跳转登录界面设计

MainWindow.xaml.cs跳转登录界面代码如下:

using System;
using System.Windows;
using System.Windows.Threading;namespace sample5
{/// <summary>/// MainWindow.xaml 的交互逻辑/// </summary>public partial class MainWindow : Window{//public int play_state = 1;  public MainWindow(){InitializeComponent();#region 登录界面加载及验证//显示登陆界面,验证后返回。LoginWindow loginWindow = new LoginWindow();loginWindow.ShowDialog();if (loginWindow.DialogResult != Convert.ToBoolean(1)){this.Close();}//显示登陆界面 结束#endregion }}}     

2.登录界面设计

Xaml代码如下(添加1个Nuget库:MaterialDesignThemes.3.1.0-ci981 ;可参考):

<Window x:Class="sample5.LoginWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:local="clr-namespace:sample5"mc:Ignorable="d"Title="用户登录" Height="500" Width="350" ResizeMode="NoResize" WindowStartupLocation="CenterScreen" WindowStyle="None" MouseLeftButtonDown="MoveWindow_MouseLeftButtonDown"FontFamily="Segoe UI Emoji"><Grid><Rectangle Height="280" VerticalAlignment="Top"><Rectangle.Fill><LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"><GradientStop Color="#FF2281D1"/><GradientStop Color="#FF34268A" Offset="1"/><GradientStop Color="#FF33288B" Offset="0.546"/></LinearGradientBrush></Rectangle.Fill></Rectangle><Rectangle Height=" 220" VerticalAlignment="Bottom" ><Rectangle.Fill><SolidColorBrush Color="Snow" /></Rectangle.Fill></Rectangle><Rectangle Width="280" Height="240" VerticalAlignment="Bottom" Margin="0,80" RadiusY="10" RadiusX="10" Fill="White"><Rectangle.Effect><DropShadowEffect BlurRadius="15" Direction="0" RenderingBias="Quality" ShadowDepth="1" Color="#FFBBBBBB"/></Rectangle.Effect></Rectangle><Grid VerticalAlignment="Bottom" Margin="35,80" Height="240"><Label Content="登录" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="5" Foreground="Gray" FontSize="18"/><StackPanel VerticalAlignment="Center" Margin="15"><TextBox x:Name="Account" Margin="0,5" materialDesign:HintAssist.Hint="账号" Style="{StaticResource MaterialDesignFloatingHintTextBox}" FontFamily="Champagne &amp; Limousines" FontSize="16"/><PasswordBox x:Name="Password" Margin="0,5" materialDesign:HintAssist.Hint="密码" Style="{StaticResource MaterialDesignFloatingHintPasswordBox}" FontFamily="Champagne &amp; Limousines" FontSize="16"/></StackPanel></Grid><Button Width="150" HorizontalAlignment="Center" VerticalAlignment="Bottom" Margin="0,65" Content="LOGIN" Click="Login_Button"/><TextBlock Text="注册账户" HorizontalAlignment="Left"  VerticalAlignment="Bottom" Margin="60 40" FontSize="13" Foreground="Gray"  Cursor="Hand" MouseLeftButtonDown="TextBlock_MouseLeftButtonDown"/><TextBlock Text="忘记密码?" HorizontalAlignment="Right " VerticalAlignment="Bottom" Margin="60 40"  FontSize="13" Foreground="Gray"  Cursor="Hand"/><Button HorizontalAlignment="Right" VerticalAlignment="Top" Background="{x:Null}" BorderBrush="{x:Null}" Click="Close_Click" ><materialDesign:PackIcon Kind="Close"/></Button><Border CornerRadius="30" BorderBrush="#FF2281D1" BorderThickness="2" Width="100" Height="100" VerticalAlignment="Top" Margin="30"><Border.Background><ImageBrush ImageSource="./picture/Loginbackground.jpg"/></Border.Background></Border></Grid>
</Window>

后台代码如下(LoginWindow.xaml.cs):

using System;
using System.Collections;
using System.Windows;
using System.Windows.Input;
using Window = System.Windows.Window;namespace sample5
{/// <summary>/// LoginWindow.xaml 的交互逻辑/// </summary>public partial class LoginWindow : Window{public string UserName;public string UserPassword;public int border = 1;public static Hashtable userall_harsh;public LoginWindow(){InitializeComponent();}private void MoveWindow_MouseLeftButtonDown(object sender, MouseButtonEventArgs e){DragMove();}private void Close_Click(object sender, RoutedEventArgs e){this.Close();}private void Login_Button(object sender, RoutedEventArgs e){ExcelSave excel1 = new ExcelSave();userall_harsh = excel1.readExcel();if (userall_harsh == null){MessageBox.Show("无此账户,请先注册!");return;}else{               IDictionaryEnumerator myEnumerator = userall_harsh.GetEnumerator();  //读取harshtable中的key和value值while (myEnumerator.MoveNext()) //将枚举数推到集合的下一元素,若为空,则退出循环{UserName = myEnumerator.Key.ToString();         //key值赋给UserNameUserPassword = myEnumerator.Value.ToString();    //value值赋给UserPasswordif (Account.Text.ToString() == UserName && Password.Password.ToString() == UserPassword){this.DialogResult = Convert.ToBoolean(1);this.Close();break;}else if (border<=userall_harsh .Count-1)      //给循环一边界,若循环到所存数据最后一个数仍然不正确,则执行else语句{border++;}                        elseMessageBox.Show("账号或密码错误,请重试!");}}}//“注册账户”TextBlock触发事件private void TextBlock_MouseLeftButtonDown(object sender, MouseButtonEventArgs e){RegisterWindow register1 = new RegisterWindow();  //Login为窗口名,把要跳转的新窗口实例化this.Close();  //关闭当前窗口register1.ShowDialog();   //打开新窗口          }}
}

3.注册界面设计

Xaml代码如下:

<Window x:Class="sample5.RegisterWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:local="clr-namespace:sample5"mc:Ignorable="d"Title="用户登录" Height="500" Width="350" ResizeMode="NoResize" WindowStartupLocation="CenterScreen" WindowStyle="None" MouseLeftButtonDown="MoveWindow_MouseLeftButtonDown"FontFamily="Segoe UI Emoji"><Grid><Rectangle Height="280" VerticalAlignment="Top"><Rectangle.Fill><LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"><GradientStop Color="#FF2281D1"/><GradientStop Color="#FF34268A" Offset="1"/><GradientStop Color="#FF33288B" Offset="0.546"/></LinearGradientBrush></Rectangle.Fill></Rectangle><Rectangle Height=" 220" VerticalAlignment="Bottom" ><Rectangle.Fill><SolidColorBrush Color="Snow" /></Rectangle.Fill></Rectangle><Rectangle Width="280" Height="240" VerticalAlignment="Bottom"  Margin="0,80" RadiusY="10" RadiusX="10" Fill="White" ><Rectangle.Effect><DropShadowEffect BlurRadius="15" Direction="0" RenderingBias="Quality" ShadowDepth="1" Color="#FFBBBBBB"/></Rectangle.Effect></Rectangle><Grid VerticalAlignment="Bottom" Margin="35,80" Height="240"><Label Content="用户注册" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="5" Foreground="Black" FontSize="18"/><StackPanel VerticalAlignment="Center" Margin="20"><TextBox x:Name="Re_Account" Margin="0,5" materialDesign:HintAssist.Hint="请输入账号" Style="{StaticResource MaterialDesignFloatingHintTextBox}" FontFamily="Champagne &amp; Limousines" FontSize="16"/><PasswordBox x:Name="Re_Password" Margin="0,5" materialDesign:HintAssist.Hint="请输入密码" Style="{StaticResource MaterialDesignFloatingHintPasswordBox}" FontFamily="Champagne &amp; Limousines" FontSize="16"/><PasswordBox x:Name="Re_PasswordAgain" Margin="0,5" materialDesign:HintAssist.Hint="请确认密码" Style="{StaticResource MaterialDesignFloatingHintPasswordBox}" FontFamily="Champagne &amp; Limousines" FontSize="16"/></StackPanel></Grid><Button Width="150" HorizontalAlignment="Center" VerticalAlignment="Bottom" Margin="0,65" Content="Register" Click="Register_Button"/><Border CornerRadius="30" BorderBrush="#FF2281D1" BorderThickness="2" Width="100" Height="100" VerticalAlignment="Top" Margin="30"><Border.Background><ImageBrush ImageSource="./picture/Registerbackground.jpg"/></Border.Background></Border><Button HorizontalAlignment="Right" VerticalAlignment="Top" Background="{x:Null}" BorderBrush="{x:Null}" Click="ReClose_Click" ><materialDesign:PackIcon Kind="Close"/></Button></Grid>
</Window>

后台代码如下:

using System;
using System.Collections;
using System.Windows;
using System.Windows.Input;
using Window = System.Windows.Window;namespace sample5
{/// <summary>/// RegisterWindow.xaml 的交互逻辑/// </summary>public partial class RegisterWindow : Window{public static Hashtable userall;public RegisterWindow(){InitializeComponent();}private void MoveWindow_MouseLeftButtonDown(object sender, MouseButtonEventArgs e){DragMove();}private void ReClose_Click(object sender, RoutedEventArgs e){this.Close();}private void Register_Button(object sender, RoutedEventArgs e){string u = Re_Account.Text.ToString();string p = Re_Password.Password.ToString();string rp = Re_PasswordAgain.Password.ToString();ExcelSave excel = new ExcelSave();if (String.IsNullOrEmpty(u)){MessageBox.Show("user is not null");return;}if (String.IsNullOrEmpty(p)){MessageBox.Show("password is not null");return;}if (String.IsNullOrEmpty(rp)){MessageBox.Show("Repassword is not null");return;}if (!p.Equals(rp)){MessageBox.Show("password is not equals repassword");return;}userall = excel.readExcel();  //读取excel数据if (userall == null){userall = new Hashtable();userall.Add(u, p);}else{bool isexist = userall.ContainsKey(u);  //判断用户是否存在if (isexist){MessageBox.Show("user is exist!");return;}else{userall.Add(u, p);Console.WriteLine(userall.Count);}}System.Windows.Application.Current.Properties["users"] = userall;   //类似于Session的功能,用户登录后,可以将用户的信息保存在Properties中。excel.InsertExcel(u, p);MessageBox.Show("regist success!");MainWindow main = new MainWindow();main.WindowStartupLocation = WindowStartupLocation.Manual;   //使新窗口位置在原来的位置上main.Left = this.Left;  //使新窗口位置在原来的位置上main.Top = this.Top;  //使新窗口位置在原来的位置上this.Close();main.ShowDialog();  //打开新窗口         }}
}

4.Excel保存数据类设计

学习使用Csharp处理excel表,创建ExcelSave.cs:

using System;
using Excel = Microsoft.Office.Interop.Excel;
using System.Collections;
using System.Windows;namespace sample5
{public class ExcelSave{Excel.Application ExcelApp = new Excel.Application();#region 创建excel工作簿public void InsertExcel(string u, string p){//1.创建Exceltry{//2.打开已经存在的工作簿string path = "C:\\Users\\非黑不即白\\Desktop\\code.xlsx";ExcelApp.Workbooks.Open(path, ReadOnly: false);//3.ExcelApp.Cells[1, 1].Value = "username";ExcelApp.Cells[1, 2].Value = "password";int RowCount = ExcelApp.ActiveSheet.UsedRange.Rows.Count + 1;//ExcelApp.ActiveSheet.Rows[RowCount].Insert(u, p);ExcelApp.Cells[RowCount, 1].Value = u;ExcelApp.Cells[RowCount, 2].Value = p;ExcelApp.DisplayAlerts = false; //保存Excel的时候,不弹出是否保存的窗口直接进行保存 //4.保存工作表ExcelApp.ActiveWorkbook.Save();}catch{MessageBox.Show("导出文件保存失败,可能原因该文件已打开!", "警告!");}finally{//5.关闭工作簿ExcelApp.ActiveWorkbook.Close();//6.退出excelExcelApp.Quit();// PublicMethod.Kill(ExcelApp);}}#endregion#region 读取excel工作簿数据public Hashtable readExcel(){try{//2.打开已经存在的工作簿string path = "C:\\Users\\非黑不即白\\Desktop\\code.xlsx";//ExcelApp.Workbooks.Open(path, ReadOnly: true);Hashtable h = new Hashtable();Excel.Workbook wb = ExcelApp.Application.Workbooks.Open(path, ReadOnly: true); //取得工作簿Excel.Worksheet ws = (Excel.Worksheet)wb.Worksheets.get_Item(1);int rowsint = ws.UsedRange.Cells.Rows.Count; //得到行数Excel.Range rng1 = ws.Cells.get_Range("A2", "A" + rowsint); // 取得数据范围区域(不包括标题列)Excel.Range rng2 = ws.Cells.get_Range("B2", "B" + rowsint);string[,] arry = new string[rowsint - 1, 2];  //将新值赋给一个数组if (rowsint <= 1){//MessageBox.Show("无账户信息,请先注册!");  LoginWindow已做判断,无需重复return null;}else{if (rowsint == 2)  //解决表格有一个数据用户,再添加时报错的问题{arry[0, 0] = rng1.Value2.ToString();   //rng.value2获取单元格数据arry[0, 1] = rng2.Value2.ToString();h.Add(rng1.Value2.ToString(), rng2.Value2.ToString());Console.WriteLine(rng1.Value2.ToString() + " :" + rng2.Value2.ToString());return h;}else{for (int i = 1; i <= rowsint - 1; i++){arry[i - 1, 0] = rng1.Value2[i, 1].ToString();   //rng.value2获取单元格数据arry[i - 1, 1] = rng2.Value2[i, 1].ToString();h.Add(rng1.Value2[i, 1].ToString(), rng2.Value2[i, 1].ToString());Console.WriteLine(rng1.Value2[i, 1].ToString() + " :" + rng2.Value2[i, 1].ToString());}return h;}}}catch{MessageBox.Show("read excel error");return null;}finally{//5.关闭工作簿ExcelApp.ActiveWorkbook.Close();//6.退出excelExcelApp.Quit();//PublicMethod.Kill(ExcelApp); //关闭excel后台进程,此处无需添加}}#endregion}/* 关闭excel后台进程public class PublicMethod{[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID);public static void Kill(Excel.Application excel){IntPtr t = new IntPtr(excel.Hwnd);//得到这个句柄,具体作用是得到这块内存入口 int k = 0;GetWindowThreadProcessId(t, out k);   //得到本进程唯一标志kSystem.Diagnostics.Process p = System.Diagnostics.Process.GetProcessById(k);   //得到对进程k的引用p.Kill();     //关闭进程k}}*/
}

5.源码

结构总览:
在这里插入图片描述

源码:点击跳转地址


三、补充

1.增加Mysql数据库存储账户数据

using System;
using System.Collections;
using System.Windows;
//引入MySQL
using MySql.Data.MySqlClient;namespace SheepMusic
{public class Mysql_Code{static string constring = "server = localhost ;port=3306; uid = root; pwd = djz19960824; database = test; charset=utf8;";   //定义连接mysql字符串MySqlConnection sqlCnn = new MySqlConnection(constring);    //连接mysql#region 读取Mysql数据库信息public Hashtable Mysql_read(){string username;string password;string cmdstring = "select * from code";    //写入sqlMySqlCommand sqlCmd = new MySqlCommand(cmdstring, sqlCnn);   //创建命令对象  Hashtable h = new Hashtable();try{sqlCnn.Open();  //打开数据库MySqlDataReader rec = sqlCmd.ExecuteReader();while (rec.Read()){username = rec.GetString(0);password = rec.GetString(1);h.Add(username, password);}return h;}catch (Exception ex){MessageBox.Show(ex.Message, "error");return null;}finally{sqlCnn.Close();}}#endregion#region 外部写入Mysql数据库信息public void Mysql_insert(string u, string p){try{sqlCnn.Close();sqlCnn.Dispose();string insertstring = "insert into code values('" + u + "','" + p + "')";MySqlCommand sqlInsert = new MySqlCommand(insertstring, sqlCnn);sqlCnn.Open();sqlInsert.ExecuteNonQuery();    //插入数据}catch (Exception ex){MessageBox.Show(ex.Message, "error");}finally{sqlCnn.Close();}}#endregion#region 修改Mysql数据库数据信息public void Mysql_reset(string u, string p){try{sqlCnn.Close();sqlCnn.Dispose();string resetstring = "update code set password ='" + p + "' where user = '" + u + "'";MySqlCommand sqlReset = new MySqlCommand(resetstring, sqlCnn);sqlCnn.Open();sqlReset.ExecuteNonQuery();    //插入数据}catch (Exception ex){MessageBox.Show(ex.Message, "error");}finally{sqlCnn.Close();}}#endregion}
}

参考文献
1. 少量代码设计一个登录界面 - .NET CORE(C#) WPF开发
2.页面跳转
3.WPF注册登录页面,同时将注册信息保存到一个excel中
4.C#导出数据到Excel的几种方法
补充学习


http://chatgpt.dhexx.cn/article/33yX1qxt.shtml

相关文章

C# WPF界面设计参考 工控机上位机界面 美观炫酷的现代化风格界面设计实际案例分享 界面设计代码

1.动图效果展示 2.界面1 3.界面2 4.界面3 需要界面效果代码的可留言联系博主

WPF界面设计学习

github上发现了一个不错的项目&#xff1a; https://github.com/HenJigg/wpf-uidesign 还配有B站的学习视频&#xff1a; https://space.bilibili.com/32497462 看了这个项目&#xff0c;觉得自己学了这么多年的WPF&#xff0c;界面还设计的这么丑&#xff0c;顿时脸都不知道往…

C# WPF十个美观的界面设计展示

概述 很多时候&#xff0c;我们设计的界面总是感觉缺乏美感&#xff0c;不是我们不会开发好看的界面&#xff0c;而是不知道怎么才算美观&#xff0c;这时候我们不妨看看别人好的页面是怎么做的.下面展示一些我觉得做的比较好的cs界面&#xff0c;希望能给大家在平时做界面设计…

WPF|分享一个登录界面设计

分享一个登录界面&#xff0c;先看效果图&#xff1a; 准备 文中使用到了一些图标&#xff1a; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZsHcZCFv-1652400544809)(https://img1.dotnet9.com/2022/05/3402.png)] 我们可以从 iconfont免费下载…

行列式的意义

本文转自http://www.cnblogs.com/AndyJee/p/3491487.html 三、行列式的几何意义&#xff1a; 行列式的定义&#xff1a; 行列式是由一些数据排列成的方阵经过规定的计算方法而得到的一个数。当然&#xff0c;如果行列式中含有未知数&#xff0c;那么行列式就是一个多项式。它…

矩阵——对称行列式快解

1、先化成爪型行列式 2、再化成上三角或下三角 第一步&#xff1a;把第1行的1倍分别加至第2、3、4行&#xff0c;化为爪型行列式 第二步&#xff1a;把第2、3、4列的&#xff08;-1&#xff09;倍都加到第1列&#xff0c;化为上三角 第三步&#xff1a;得出结果

【线性代数】一、行列式和矩阵

一、行列式 文章目录 一、行列式1.1 行列式性质1.2 余子式行列式按照行列展开的展开公式 一、行列式求解1.用行列式2.用矩阵3.用特征值 1.3 行列式计算一、具体形行列式(1)直接运算1.行\列和相等类型2.爪形、异爪形行列式 (2)化为121个基本行列式1. 主副对角线行列式2. 拉普拉斯…

矩阵/行列式的意义

一、代数意义 矩阵乘法规则看起来比较复杂&#xff0c;不容易理解其乘法规则背后隐含的意义。现举一个例子说明矩阵乘法的意义。如下图所示&#xff0c;一个商店出售Beef pie&#xff0c;chicken pie&#xff0c;vegetable pie&#xff0c;其单价分别为3元&#xff0c;4元&…

矩阵的行列式、秩的意义

线性代数真是一个很抽象的东西&#xff0c;即使我们很多人都学过&#xff0c;但是我相信绝大部分的都不知道这是干嘛用的&#xff0c;找了不少资料&#xff0c;终于发现了这么一篇好文章&#xff0c;于是强烈希望可以和大家分享&#xff0c;帮助大伙进一步理解矩阵的行列式和秩…

线代第二章 矩阵 +行列式与矩阵的区别

行列式与矩阵的区别 一、 行列式是一个数&#xff0c;矩阵是一个表格。 &#xff08;行列式都是n阶的方阵&#xff0c;但矩阵不一定是方阵Ann&#xff0c;也可以是Amn&#xff09; 只有n阶矩阵Ann&#xff1a;才有对应的行列式|A|&#xff0c;才能计算对应行列式的模。 二、…

行列式和矩阵的区别

1&#xff0c;本质上 &#xff08;1&#xff09;行列式是一个数&#xff0c;一个值。当有未知数时就是一个表达式。 &#xff08;2&#xff09;矩阵是一个数表&#xff0c;一种数据结构&#xff0c;可以按照数据库表结构来理解&#xff0c;也可以理解成二维数组。 矩阵是不能…

线性代数 —— 矩阵的行列式

1.行列式 排成 n 阶方阵形式的 n^2 个数所确定的一个数称为 n 阶方阵 A 的行列式&#xff0c;记为&#xff1a;det(A) 或 |A| 一个 2x2 的矩阵的行列式可表示为&#xff1a; 2.余子式与代数余子式 将 n 阶行列式中元素 的第 i 行和第 j 列划去后&#xff0c;留下的 n-1 阶…

行列式与矩阵的区别

1、行列式的本质是线性变换的放大率&#xff0c;而矩阵的本质就是个数表。 2、行列式行数列数&#xff0c;矩阵不一定&#xff08;行数列数都等于n的叫n阶方阵&#xff09;&#xff0c;二者的表示方式亦有区别。 3、行列式与矩阵的运算明显不同 &#xff08;1&#xff09; 相…

怎么求矩阵行列式?工作之后的复习

相信很多工作以后的人可能还知道矩阵行列式是什么&#xff0c;但是具体怎么求&#xff0c;可能忘记了&#xff0c;本文则带大家复习下矩阵行列式。深度学习&#xff0c;等等的一些前沿算法&#xff0c;都会用到矩阵额。 一维矩阵的行列式则是本身 二维矩阵的行列式【二阶行列式…

深度之眼(三)——矩阵的行列式

文章目录 一、行列式的定义1.1 二阶行列式1.2 三阶行列式 二、行列式的计算2.1 全排列和逆序列2.2 计算定义 三、特殊矩阵的行列式与行列式的性质3.1 特殊矩阵的行列式3.2 行列式的性质 四、行列式按行&#xff08;列&#xff09;展开&#xff0c;代数余子式五、行列式在线性方…

推荐一些国内外文献检索与免费下载的网站

点击即可打开链接&#xff1a; 1.SCI-Hub 2.CiteSeerX 3.arXiv.org 4.FINDARTICLES 5.scinapse&#xff08;用于检索比较好用&#xff0c;下载不了的在SCI-Hub上下载&#xff09; 6.SAGE journals 7.Open Access Libarary 8.CNPLINKER 9.DSpaceMIT&#xff08;可以搜到…

如何查找下载外文文献,超强外文文献检索网站排名

英文文献哪里找&#xff0c;下面小编给大家推荐几个超强英文文献下载网站&#xff0c;推荐排名如下&#xff1a; 第4名&#xff1a;sci-hub 这个网站很多科研人都知道&#xff0c;优点是可以免费下载英文文献&#xff0c;缺点是网站不太稳定经常换域名&#xff0c;而且需要你明…

干货 | 外文文献哪里找?八大网站免费下载!

来源&#xff1a;研鹿论文 本文约1300字&#xff0c;建议阅读6分钟 本文为你汇总免费外文文献书籍网站。 疫情期间宅在家的你们都做些什么呢&#xff1f;第一次感觉玩手机都这么无聊&#xff0c;小编不由自主地都开始写论文了 可是宅在家里&#xff0c;没有谷歌学术&#xff0c…

文献检索工具 | 计算机类英文文献检索数据库DBLP

文章目录 1.什么是DBLP&#xff1f;2.DBLP文献检索的3种方式2.1.检索指定会议/期刊的论文2.2.检索指定作者的论文2.3.检索指定题目的论文 3.Tips:DBLP中各个颜色模块含义 1.什么是DBLP&#xff1f; 定义&#xff1a; DBLP&#xff08;DataBase systems and Logic Programming&…

中文文献检索网站

1. 中国知网 网址&#xff1a; https://www.cnki.net/ 中国知网被称众多科研人称国内文献论文最全最权威的中文文献库&#xff0c;知网提供中国学术文献、外文文献、学位论文、报纸、会议、年鉴、工具书等各类资源统一检索、统一导航、在线阅读和下载服务。 2. 掌桥科研 网址…