1.软件安装步骤 a)运行光盘中客户软件\CCS5000 CCS2.20\CCS2.2\SETUP.EXE,进入引导界面; b)选择Install下的Code Composer Studio进入安装界面; c)按照默认的方式安装,装在C:\ti下。 d)安装软件补丁:运行光盘客户软件\c5000ccs2.20\CCS FOR C5000-补丁\C5000-2.20.00-FULL-to-C5000-2.20.18-FULL.EXE,进入安装界面,然后按照默认的方式安装即可。 e)重新启动计算机,按DEL键进入CMOS的设置界面CMOS SETUP UTILITY,将Integrated Peripherals中的Onboard Paralell Port改为378/IRQ,Parrallel Port Mode改为EPP,保存退出。 f)进入windows后会出现“CCS 2(‘ C5000) ”、 “Setup CCS 2(‘ C5000) ”两个图标。
标签: 激活
上传时间: 2017-01-03
上传用户:jmw8637
/*================================================================= 4扫16*16下入上出C语言程序, 低位起笔,数据反相。 预定义 **************************************************************/ #include #include //可使用其中定义的宏来访问绝对地址? bit ture=1; // 使能正反相位选择 bit false=0; // 使能反相 sbit SCK=P3^6; // EQU 0B6H ; 移位 sbit RCK=P3^5; //EQU 0B5H ; 并行锁存 //sbit P1_3=P1^3; //外RAM扩展读写控制,不能重复申明 sbit EN1=P1^7; //BIT sbit FB=0xD8; // FB作为标志 sfr BUS_SPEED=0xA1; //访问片外RAM速度设置寄存器 sfr P4SW=0xBB; //P4SW寄存器设置P4.4,P4.5,P4.6的功能 sfr P4=0xC0; // P4 EQU 0C0H sbit NC=P4^4; sbit CS=P4^6; //片选 sfr WDT_CONTR=0xC1; // 0C1H ;看门狗寄存器 sfr AUXR=0x8E; // EQU 08EH ;附件功能控制寄存器 sfr16 DPTR=0x82; sfr CLK_DIV=0x97 ; //时钟分频寄存器 const unsigned int code All_zk =256 ; // 0E11H ;原数据总字节 const unsigned int code am_zk =128 ; // 0E13H ;单幕数据量 const unsigned char code asp = 255; // asp数据相位字,如果是正相字,那么asp=0 bit basp=1; // asp数据相位字标记,如果是正相字,那么basp=0 const unsigned char code font[]= // 晶科电子LED数码(反相字) {0xBD,0x81,0xEF,0xFF,0xBD,0x81,0xF7,0xFF,0xEF,0xEB,0x80,0x9F,0xEF,0x8F,0xEF,0xEF,0x7F,0x7B,0x7B,0x7F,0xBF,0xEF,0xEF,0xFF,0x7F,0x00,0xFF,0xFF,0xFF,0x80,0xFE,0xFF, 0x81,0xBD,0x0F,0x0F,0x81,0xBD,0xF0,0xF0,0xEF,0xED,0xE7,0xE1,0xEF,0xE1,0xEE,0xEE,0x7F,0x7B,0x7B,0x7F,0xBF,0xEF,0xEF,0xFF,0x7F,0x7F,0x7F,0x03,0xFF,0xFF,0xFF,0xF0, 0xBD,0x81,0xEF,0xEF,0xBD,0x81,0xF7,0xF7,0xEF,0x2E,0xC7,0xEF,0xEF,0xEE,0xED,0xED,0xFF,0x03,0x03,0x7F,0x80,0xE0,0xE0,0xFF,0x5F,0x7F,0x7F,0xFF,0xFF,0xFF,0xFF,0xFB, 0xFF,0xBD,0xFF,0x0F,0xFF,0xBD,0xFF,0xF0,0xEF,0xEF,0xAB,0xEF,0xEF,0xEF,0xED,0xED,0xFF,0x7B,0x7B,0x03,0xFF,0xEF,0xEF,0xE0,0xBF,0x7F,0x7F,0xFF,0xFF,0xFF,0xDF,0xFD, 0xBD,0xFD,0xFD,0xFF,0xBD,0xED,0xBD,0xFF,0xDD,0xBD,0xDD,0xFF,0xFF,0xFF,0xFF,0xFF,0xCF,0xEF,0x00,0xEF,0xEB,0xEB,0x81,0xFB,0xC3,0xDA,0xF7,0xFF,0xDF,0xDF,0xEE,0xFF, 0x80,0xFD,0xFD,0xFF,0xC0,0xED,0xED,0xFF,0xE0,0xBD,0xBD,0xFF,0xFF,0xFF,0xFF,0xFF,0xB3,0x00,0xC7,0x6D,0x8D,0xEB,0xDD,0xF3,0xDB,0xDB,0xFB,0x40,0xDF,0xDF,0xEE,0xE0, 0xFF,0xFD,0xFD,0xFF,0xFF,0xFD,0xED,0xFF,0xFF,0xBD,0xBD,0xFF,0xFF,0xFF,0xFF,0xFF,0xFC,0xB7,0x2B,0xAB,0xDE,0xF7,0xDD,0xFB,0xFB,0x5B,0xC3,0xF7,0xEB,0xD0,0xEE,0xEF, 0xFF,0xFD,0xFD,0xF8,0xFF,0xBD,0xE1,0xC0,0xFF,0xBD,0xBD,0xE0,0xFF,0xFF,0xFF,0xFF,0xFF,0xD3,0xED,0xC7,0xFF,0xF7,0xDC,0xFB,0xFF,0xDB,0xD9,0xF7,0xF7,0xDF,0xC0,0xEE}; const unsigned char data xzL_data =0x08; //0603H;一幕一行字节数 const unsigned int data aL_data =0x20; //单幕单号线(单组线)数据量 const unsigned char data mov =0x03A ; //移动速度 const unsigned int data t_T =0x040A ; //0E0AH ; 05FAH; ;停留时间 const unsigned char data mu_num=0x02 ; //0602H ;幕数 unsigned int m; //m幕长变量<=am_zk unsigned char data_z; //数据寄存器 unsigned int xd; //数据指针寄存器 /*********************************************************************** 数据转移子函数 ===============================================================*/ char MOVD() { unsigned char f,nm; //nm幕数控制 unsigned char code *dptr; unsigned char xdata *xdptr = 0; f = asp ; for (m=0; m
上传时间: 2017-05-04
上传用户:sbfd010
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } } 【程序3】 题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。 public class lianxi03 { public static void main(String[] args) { int b1, b2, b3;
上传时间: 2017-12-24
上传用户:Ariza
用c#画正弦函数,f(x)=Asin(x)+B
标签: 画正弦函数-C#
上传时间: 2018-05-19
上传用户:一缕迷失的光
产品型号:HT9B92 产品品牌:HOLTEK/合泰 封装形式:TSSOP48/LQFP48 产品年份:新年份 原厂直销,工程服务,技术支持,价格更具优势! RAM 映射 36×4 LCD 显示驱动器 概述 HT9B92 是一款存储器映射和多功能LCD控制驱动芯片。该芯片显示模式有144 点(36×4 )。 HT9B92 软件配置特性使得它适用于多种LCD应用,包括LCD 模块和显示子系统。HT9B92 通过双线双向 I2C 接口与大多数微处理器/ 微控制器进行通信。 功能特点 ● 工作电压:2.4V~5.5V ● 内部集成振荡电路 ● Bias: 1/2 or 1/3; Duty: 1/4 ● 带电压跟随器的内部LCD 偏置发生器 ● 提供VLCD 引脚来调整LCD 工作电压 ● I2C接口 ● 可选 LCD 帧频率 ● 多达36×4 位RAM 用来存储显示数据 ● 最大显示模式36×4:36 SEGs 和4 COMs ● 多种闪烁模式:不闪烁,0.5Hz,1Hz,2Hz ● 写地址自动增加 ● 低功耗省电模式 ● 采用硅栅极CMOS 制造工艺 ● 封装类型:48-pin TSSOP/LQFP ● 市面可兼容型号:元泰VINTEK:VKL44A TSSOP48封装,VKL144B QFN48(6MM*6MM)封装,VKL128 LQFP44封装,VKL060 SSOP24封装 ------ 同种脚位可以任意切换,少脚位更具性价比高,方便设计等特点。 ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● 产品型号:VKL144A 产品品牌:VINTEK/元泰 封装形式:TSSOP48 产品年份:新年份 原厂直销,工程服务,技术支持,价格更具优势! 超低功耗液晶LCD显示驱动芯片 概述 VKL144A是一款性能优越的字段式液晶显示驱动芯片,由于其驱动段位多达144段和超低功耗的工艺设计特点。还具有性能稳定和低价格优势、供货稳定,目前被业界广泛应用在众多的仪器仪表的产品上。比如手持式仪表、费率表、工控仪表、医疗仪器、专用测量仪表头等等设备上使用 功能特点 ● 液晶驱动输出: Common 输出4线 Segment 输出36线 ● 内置Display data RAM (DDRAM) 内置RAM容量:36*4 =144 bit ● 液晶驱动的电源电路 1/2 ,1/3 Bias ,1/4 Duty 内置Buffer AMP I2C串行接口(SCL, SDA) ● 内置振荡电路 ● 不需要外围部件 ● 低功耗设计 ● 搭载等待模式 ● 内置Power-on Reset电路 ● 搭载闪烁功能 ● 工作电源电压: 2.5-5.5V ★应用推荐: 各种费率表,电表、水表、气表、热表、各种计量专用表头。 ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● 产品型号:VKL144B 产品品牌:VINTEK/元泰 封装形式:QFN48L(6MM*6MM) 产品年份:新年份 原厂直销,工程服务,技术支持,价格更具优势! 超低功耗液晶LCD显示驱动芯片 概述 VKL144B是一款性能优越的字段式液晶显示驱动芯片,由于其驱动段位多达144段和超低功耗的工艺设计特点。还具有性能稳定和低价格优势、供货稳定,目前被业界广泛应用在众多的仪器仪表的产品上。比如手持式仪表、费率表、工控仪表、医疗仪器、专用测量仪表头等等设备上使用 功能特点 ● 液晶驱动输出: Common 输出4线 Segment 输出36线 ● 内置Display data RAM (DDRAM) 内置RAM容量:36*4 =144 bit ● 液晶驱动的电源电路 1/2 ,1/3 Bias ,1/4 Duty 内置Buffer AMP I2C串行接口(SCL, SDA) ● 内置振荡电路 ● 不需要外围部件 ● 低功耗设计 ● 搭载等待模式 ● 内置Power-on Reset电路 ● 搭载闪烁功能 ● 工作电源电压: 2.5-5.5V ★应用推荐: 各种费率表,电表、水表、气表、热表、各种计量专用表头。 HOLTEK合泰全系列产品 芯片介绍如下: 一.LCD液晶显示驱动控制器 HT1620 HT1620G HT1621 HT1621B HT1621G HT1622 HT1622G HT1623 HT1625 HT1626 HT16C21 HT16C22 HT16C23 HT16C24 HT1620 HT16220 HT1647 HT1650 HT1660 HT1670 HT16K23 HT9B92 HT9B92G HT9B95A HT9B95B HT9B95C HT16LK24 HT16L21 HT16L23 HT1611C HT1613C HT1616C (全部封装、规格形式 均有海量现货!) 二:LED/VFD控制、驱动器 HT16506 HT16511 HT16512 HT16515 HT16514 HT16561 HT16562 HT16565 HT16566 HT16523 HT16525 HT1632C HT16K33 HT16K33 HT16528-001 HT16528-002 HT16528-003 (全部封装、规格形式 均有海量现货!) 三.Touch Key触摸按键电路/ I/O Flash MCU BS801B/C BS802B/C BS804B/C BS804B/C BS806B/C BS808B/C BS812A-1 BS813A-1 BS814A-1 BS814A-2 BS816A-1 BS818A-2 BS8112A-3 BS8116A-3 BS83A02A-4 BS83A04A-3 BS83A04A-4 BS83B04A-4 BS83B08A-3 BS83B08A-4 BS83B12A-3 BS83B12A-4 (全部封装、规格形式 均有海量现货!) 四.HT7XXX全系列 微功耗LDO HT1015-1 HT71xx-1 HT71xx-2 HT71xx-3 HT71xx-3 HT75xx-1 HT75xx-2 HT75xx-3 HT73xx HT72xx HT78xx Power management(电源LDO稳压管理IC) HT71**为30MA稳压芯片 产品:HT7130,HT7133,HT7136,HT7144,HT7150 HT75**为100MA稳压芯片 产品:HT7530,HT7533,HT7536,HT7544,HT7550 HT73**为300MA稳压芯片 产品:HT7318,HT7325,HT7327,HT7330,HT7333,HT7335,HT7350 HT70**为电压检测芯片 产品:HT7022,HT7024,HT7027,HT7033,HT7039,HT7044,HT7050 HT77::为升压DC-DC芯片 产品:HT7727,HT7730,HT7733,HT7737,HT7750 LDO与探测器和数据收发:HT71DXX 高电源抑制比300mA双LDO稳压器:HT72Dxxxx 高电源抑制比300mA LDO稳压器:HT72BXX 高电源抑制比 150mA LDO稳压器:HT75BXX 高电源抑制比 500mA LDO稳压器:HT78BXX 3SOT89 T/R 电压检测器系列(小功率):HT70xxA-1 HT70xxA-2 HT70xxA-3 PFM升压DC-DC变换器:HT77xx HT77xxA HT77S10 HT77S11 PFM同步升压直流/直流转换器:HT77xxS HT77xxSA LED照明驱动:HT7L4811 HT7L4091 HT7L4091 HT7L2102 HT7L2103 HT7L2103 白光LED背光驱动:HT7936 HT7937 HT7938 HT7938A HT7939 HT7943 HT7945 降压直流-直流转换器:HT7465 HT7466 AC/DC PWM变换器:HT7A3942 HT7A6002 HT7A6003 HT7A4016 充电泵直流/直流转换器:HT7660 (全部封装、规格形式 均有海量现货!) 五:时钟IC及其他消费类IC HT1380 HT1380A HT1381 HT1381A HT1382 HT9200A HT9170 HT9172 HT9032 HT8970 HT9247 HT82V731 HT82V736 HT6221 HT6222 HT62104 HT12A\E HT12D\F (全部封装、规格形式 均有海量现货!) 六.电可擦除只读存储器 HT2201 HT24LC02 HT24LC02A HT24LC04 HT24LC08 HT24LC16 HT24LC32 HT24LC64 HT24LC128 HT24LC256 HT93LC46 HT93LC66 HT93LC86 (全部封装、规格形式 均有海量现货!) 七.各类编码/射频/解码器 HT12D HT12E HT12F HT6010 HT6012 HT6014 HT6026 HT6030 HT6032 HT6034 HT600 HT604L HT6207 HT680 HT6P20B HT6P20D HT6P40B2 HT6P40C2 HT6P40D2 HT6P40E2 HT6P40B2T3 HT6P40C2T3 HT6P40D2T3 HT6P40E2T3 HT6P423A HT6P423A HT6P427A HT6P433A HT6P437A HT12C2T3 HT12C2T4 HT12E2T3 HT12E2T4 HT12E2T4 HT16C2T3 HT16C2T4 HT16E2T3 HT16E2T4 HT16G2T3 HT16G2T4 HT9831 HT7610A HT7611A/B HT7612 HT7612B (全部封装、规格形式 均有海量现货!) 八.MCU(微控IC) HT48 系列 应用于遥控,电扇/电灯控制,洗衣机控制,电子秤,玩具及各种系统控制. 产品:HT48R05,HT48R06,HT48R30,HT48R50 HT49系列 应用于多种LCD DI低功耗应用,如电子秤,休闲产品,高阶的家用电器 产品:HT49R30,HT49R50 HT46带A/D系列 适用于充电器控制,电磁炉等 产品:HT46R47,HT46R22,HT46R23,HT46R24,HT46R51 HT46带A/D及LCD系列 适用于洗衣机控制器,相机控制器和带LCD显示的家用电器系列 产品:HT46R62,HT46R63,HT46R64 HT48RA系列适用于红外遥控器以及各种电子系统的控制器 (全部封装、规格形式 均有海量现货!) 九.放大器/音频放大器 /DA转换器 HT9231 HT9232 HT9234 HT9251 HT9252 HT9254 HT9274 HT9291 HT9292 HT9294 HT82V732 HT82V733 HT82V735 HT82V736 HT82V736 HT82V739 HT82V73 HT82V731 HT82V737 HT82V738 (全部封装、规格形式 均有海量现货!) 十.音调IC/发生器 /接收器 HT9200A HT9200B HT9170B HT9170D HT9172 HT8970 HT8972 (全部封装、规格形式 均有海量现货!) IC型号众多,未能一一收录。 芯片主要应用领域如下: ★显示模块:电子秤、无线麦克风、录音笔、影音多媒体、小家电周边 ★家电类:电风扇、电饭煲、玩具、冷气机、暖风机、空调扇、饮水机、抽油烟机、消毒柜、电热水器、面包机、豆浆机、咖啡壶、电冰箱、洗衣机控制器、空调控制板等。 ★通讯类:来电显示电话、无绳电话、IC电话、投币电话、对讲机等 ★玩具游戏类:无线遥控车、PS游戏机、跳舞毯、方向盘、手柄、电子枪、PS开机IC等。 ★计算机周边:显示器控制、PC-MOUSE、单/双滚、遥控MOUSE、键盘、手写板等。 ★智能卡类:IC卡煤气表、电能表、水表、IC读写器、IC卡门禁系统等。 ★汽车及防盗类:机车防盗器、********器、汽车天线控制器、里程表、汽车日历等。 ★医用保健类:电子针灸器、甩脂机、智能体温计、LCD显示血压计、跑步机、按摩器、按摩垫、按摩椅 等。 ★仪表类:电压表、瓦斯表、电池电压检测器、频率计、计数器、电度表、水位检测器等。 ★其它类:充电器、照相机、电子万年钟、自动给皂机、路灯控制器、呼叫服务器等
标签: TSSOP B92 HT9 LCD HT 9B 92 48 合泰 液晶驱动
上传时间: 2018-12-07
上传用户:shubashushi66
用于开发单片机的!!!超级单片机开发工具!!! 单片机开发过程中用到的多功能工具,包括热敏电阻RT值--HEX数据转换;3种LED编码;色环电阻计算器;HEX/BIN 文件互相转换;eeprom数据到C/ASM源码转换;CRC校验生成;串口调试,带简单而实用的数据分析功能;串口/并口通讯监视等功能. 用C++ Builder开发,无须安装,直接运行,不对注册表进行操作。纯绿色软件。 详细说明: 1、RT转换:支持两种电路,8/10位转换精度,生成C/ASM源代码格式的数据,可手工输入数据或从文件中读取,输入的数据可以保存到文件中。文件格式为逗号分隔符: 温度,阻值 2、LED编码信息:可以支持 7段/14段/16段 LED,支持 C/ASM 语法,可生成 4/8 位编码,4位编码主要用于某些 LCD 驱动芯片。其中 7 段码包括:0 -- F (Hex) 14 段码包括:A -- Z, 0 -- F 16 段码包括:A -- Z, 0 -- F 编码方案可以保存供将来使用。 使用方法请点帮助。 3、色环电阻计算器功能。 4、HEX/BIN 文件相互转换; HEX/BIN 转换成 C/ASM 源代码格式,适用于eeprom数据等处理。 加入CRC校验码生成功能。其中生成BIN文件时自动生成校验码,Get CRC 可生成任意文件的CRC码。 另外还有相关知识、资料等。 5、串口调试具有 a. 基本通讯功能; b. 数据分析功能,可自定义通讯数据中的变量,包括变量名、变量类型(长度),显示方式等; 内存映射功能中自定义变量的起始地址即内存起始地址,可自定义; 由map文件自动读取内存变量(因条件所限,目前只支持由 ImageCraft C(ICC) 编译器产生的map文件,欢迎提供其他编译器的map文件样本); 可自定义内存块的起始/结束标志; 历史数据保存功能; c. 交互式通讯, 主发时可自定义多命令自动循环发送; 从发时可定义接收到相应命令后的应答数据并自动应答; 6、串口监视功能 目前具有本功能的多为共享软件,本软件中没有任何限制。 实时监视串口操作而不占用串口资源,可保存历史数据,2k下测试通过,98下使用捕捉时可能会有点问题,没有进行调试。 并口监视应该可以使用,没有调试。 各种工具
标签: 单片机
上传时间: 2019-05-27
上传用户:小爱心早餐
#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
上传用户:啊的撒旦
为了增加公司收入,F 公司新开设了物流业务。由于 F 公司在业界的良好口碑,物流业务一开通即受到了消费者的欢迎,物流业务马上遍及了城市的每条街道。然而,F 公司现在只安排了小明一个人负责所有街道的服务。 任务虽然繁重,但是小明有足够的信心,他拿到了城市的地图,准备研究最好的方案。城市中有 n 个交叉路口,m 条街道连接在这些交叉路口之间,每条街道的首尾都正好连接着一个交叉路口。除开街道的首尾端点,街道不会在其他位置与其他街道相交。每个交叉路口都至少连接着一条街道,有的交叉路口可能只连接着一条或两条街道。 小明希望设计一个方案,从编号为1的交叉路口出发,每次必须沿街道去往街道另一端的路口,再从 新的路口出发去往下一个路口,直到所有的街道都经过了正好一次。 输入数据格式: 输入的第一行包含两个整数n, m(1≤n≤10, n-1≤m≤20),表示交叉路口的数量和街道的数量,交叉 路口从1到n标号。 接下来m行,每行两个整数a, b,表示和标号为a的交叉路口和标号为b的交叉路口之间有一条街道, 街道是双向的,小明可以从任意一端走向另一端。两个路口之间最多有一条街道。 输出输出格式: 如果小明可以经过每条街道正好一次,则输出一行包含m+1个整数p1, p2, p3, ..., pm+1,表示小明经过的路口的顺序,相邻两个整数之间用一个空格分隔。如果有多种方案满足条件,则输出字典序最小的一种方案,即首先保证p1最小,p1最小的前提下再保证p2最小,依此类推。 如果不存在方案使得小明经过每条街道正好一次,则输出一个整数-1。
标签: 代码
上传时间: 2019-07-04
上传用户:Rain
# include<stdio.h> # include<math.h> # define N 3 main(){ float NF2(float *x,float *y); float A[N][N]={{10,-1,-2},{-1,10,-2},{-1,-1,5}}; float b[N]={7.2,8.3,4.2},sum=0; float x[N]= {0,0,0},y[N]={0},x0[N]={}; int i,j,n=0; for(i=0;i<N;i++) { x[i]=x0[i]; } for(n=0;;n++){ //计算下一个值 for(i=0;i<N;i++){ sum=0; for(j=0;j<N;j++){ if(j!=i){ sum=sum+A[i][j]*x[j]; } } y[i]=(1/A[i][i])*(b[i]-sum); //sum=0; } //判断误差大小 if(NF2(x,y)>0.01){ for(i=0;i<N;i++){ x[i]=y[i]; } } else break; } printf("经过%d次雅可比迭代解出方程组的解:\n",n+1); for(i=0;i<N;i++){ printf("%f ",y[i]); } } //求两个向量差的二范数函数 float NF2(float *x,float *y){ int i; float z,sum1=0; for(i=0;i<N;i++){ sum1=sum1+pow(y[i]-x[i],2); } z=sqrt(sum1); return z; }
上传时间: 2019-10-13
上传用户:大萌萌撒