首页
试卷库
试题库
当前位置:
X题卡
>
所有题目
>
题目详情
使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。
查看本题答案
包含此试题的试卷
初级程序员《单项选择》真题及答案
点击查看
你可能感兴趣的试题
使用______测试方法时应根据程序的内部逻辑和指定的覆盖标准确定测试数据
白盒
黑盒
回归
走查
使用白盒测试方法时确定测试数据应根据______和指定的覆盖标准
程序的内部逻辑
程序的复杂程度
使用说明书
程序的功能
使用白盒测试方法时确定测试数据应该根据和指定的覆盖标准一般来说与设计测试数据无关的文档是软件的
程序的内部逻辑
程序的复杂程序
使用说明书
程序的功能
使用白盒测试方法时确定测试数据应根据______和指定的覆盖标准
程序内部逻辑
程序的复杂结构
使用说明书
程序的功能
热门试题
更多
在常用的字处理软件中按下<Alt>键再拖动鼠标选择文本可以按下<Ctrl>键再用鼠标拖动已选定的文本可以 按下<Ctrl>键再用鼠标拖动已选定的文本可以
[函数2.1说明]Fibonacci数列中头两个数均为1从第三个数开始每个数等于前两个数之和下述程序计算Fibonacci数列中前15个数并以每行5个数的格式输出[函数2.1]#include<stdio.h>mainintiff1=1f2=1;printf%5d%5df1f2;fori=3;i<=15;i++f=1;printf%5df;if2==0printf/n;f1=12;3;[试题一流程图][函数2.2说明]函数funchar*str1char*str2的功能是将字符串str2拼接到str1之后[函数2.2]funchar*str1char*str2intij;fori=0;str1[i]!=’/0’;i++;forj=0;str2[j]!=’/0’;j++4;5;
[说明]本程序的功能是给公司的员工TomJackGreen增加薪水三人的职位分别是programmerManagerCEO程序由6个类组成WorkerTest是主类programmerManagerCEO三个类薪水增加的规则是programmer的涨幅是5%Manager的是10%CEO也是Manager但是它除了有Manager的涨幅还有1000元的bonus接口SalaryRaise提供了一个增加薪水的方法raise[java程序]publicclassWorkerTestpublicWorkerTestpublicstaticvoidmainString[]argsProgrammerprogrammer=newProgrammerTom3000;Managermanager=newManagerJack4000;CEOceo=newCEOGreen4000;Worker[]worker=newWorker[3];programmerraise;managerraise;ceo.raise;worker[0]=programmer;worker[1]=manager;worker[2]=ceo;forinti=0;i<workerlength;i++System.out.prinflnName:+worker[i].getName+/tSalary:+worker[i].getSalary;publicinterfaceSalaryRaisevoidraise;publicclassWorkerpublicStringname;publicdouble1;publicWorkerpublicStringgetNamereturnname;publicvoidsetNameStringnamethis.name=name;publicdoublegetSalaryreturnsalary;publicvoidsetSalarydoublesalarythis.salary=salary;publicclassProgrammerextendsWorkerimplements2publicProgrammerpublicvoidraisedoublepets=0.05;doublesala=this.getSalary*1+pers;this.setSalarysala;publicProgrammerSiringnamedoublesalarytthis.name=name;this.salary=salary;publicclassManagerextends3implementsSalaryRaisepublicManagerpublicManagerStringnamedoublesalarythis.name=name;this.salary=salary;publicvoidraisedoublepets=0.1;doublesala=this.getSalary*1+pers;this.setSalarysala;publicclassCEOextendsManagerimplementsSalaryRaisepublicCEOpublicCEOStringnamedoublesalarythis.name=name;this.salary=salary;publicvoidraisedoublebonus=1000;4;doublesala=this.getSalary;5;this.setSalarysala;
[说明]下面的程序利用递归算法计算x和y的最大公约数[函数2.1]mainintxykt;scanf%d%d&x&y;ifx>yt=x;x=y;y=t;1;whilek!=0y=x;2;k=y%x;prinff%dx;[函数2.2说明]函数funchar*strchar*substr的功能是计算子串sugbstr在串str中出现的次数[函数2.2]funehar*strchar*substrintxyz;3;forx=0;str[x]!=’/O’;x++fory=xz=0;sabstr[z]==str[y];4y++if5==’/0’num++;break;returnnum;
[说明]有若干教师每个教师只有姓名一个教师可以指导多名研究生每名研究生有姓名和研究方向程序最后输出每个教师指导的所有研究生的姓名和研究方向[Java程序]publicclassTeacherStringname;inttop=0;Student[]student=newStudent[20];publicTeacherpublicTeacherStringnamethis.name=name;booleanaddStudentstuintlen=this.student.length;iftop<len-1this.student[top]=siu;1;returntrue;elsereturn2;voiddispSystem.out.println指导老师+this.name;System.out.println研究生:;forinti=0;i<3;i++System.out.println姓名:+this.student[i].name+/t研究方向:+this.student[i].search;publicstaticvoidmainString[]argsTeachert[]=newTeacher李明newTeacher王华;Students1=newStudent孙强数据库;Students2=newStudent陈文软件工程;Students3=newStudent章锐计算机网络;if!t[0].adds1System.out.println每个老师最多只能指导20个学生!;if!t[0].adda2System.out.println每个老师最多只能指导20个学生!;if!t[1].adds3System.out.println每个老师最多只能指导20个学生!;forinti=0;i<2;i++4;class5Stringname;Stringsearch;publicStudentpublicStudentStringnameStringsearchthis.name=name;this.search=search;StringgetNamereturnthis.name;StringgetSearchreturnthis.search;
[函数2.1说明]下面程序的功能是计算x和y的最小公倍数[函数2.1]mainintmndr;seanf%d%d&m&n;ifm<nr=m;m=n;n=r;1;whiled%n!=02;printf%d/nd;[函数2.2说明]下述程序接收键盘输入直到句点.时结束输入的字符被原样输出但连续的空格输入将转换成一个空格[函数2.2]#include<stdio.h>maincharcpreChar=’/0’;c=getchar;whilec!=’.’if3putcharc;elseifpreChar!=’’putcharc;4;c=5;
[说明]若矩阵Am×n中存在某个元素aij满足aij是第i行中最小值且是第j列中的最大值则称该元素为矩阵A的一个鞍点下面程序的功能是输出A中所有鞍点其中参数A使用二维数组表示m和n分别是矩阵A的行列数[程序]voidsaddleintA[][]intmintnintijmin;fori=0;i<m;i++min:1;forj=1;j<n;j++ifA[i][j]<min2;forj=0;j<n;j++if3p=0;whilep<m&&4p++;ifp>=mprintf%d%d%d/nijmin;
[说明]本程序用古典的Eratosthenes的筛法求从2起到指定范围内的素数如果要找出2至10中的素数开始时筛中有2到10的数然后取走筛中的最小的数2宜布它是素数并把该素数的倍数都取走这样第一步以后筛子中还留下奇数3579重复上述步骤再取走最小数3宣布它为素数井取走3的倍数于是留下57反复重复上述步骤直至筛中为空时工作结束求得2至10中的全部素数程序中用数组sieve表示筛子数组元素sieve[i]的值为1时表示数i在筛子中值为-1时表示数i已被取走[程序]#include<stdioh>#defineMAX22500mainunsignedintirangefactork;intsieve[MAX];prinffpleaseinputthe’range:;scanf%d⦥/*range指出在多大的范围内寻找素数*/fori=2;i
[说明]编写一个函数输入为偶数时调用函数求1/2+/++1/n当输入n为奇数时调用函数1/1+1/3++1/n利用指针函数[函数]#includestdio.hmainfloatpevenpodddcallfloatsumintnwhile1scanf%d&nifn>1breakifn%2==0printfEven=1elsepfinffOdd=2printf%fsumfloatpevenintnfloatsintis=1fori=2i<=ni+=23returnsfloatpoddnintnfloatsintis=0fori=1i<=ni+=24returnsfloatdcallfpnfloat*fpintnfloats5returus
[说明]本程序实现了雇员信息管理功能其中封装了雇员信息及其设置修改删除操作已知当输入为Smith312960.0时程序的输出是姓名Smith年龄31工资2960姓名Smith年龄31工资3500姓名Mary年龄23工资2500[C++程序]#include<iostream.h>#include<string.h>classemployeechar*name;//雇员姓名shortage;//年龄floatsalary;//工资public:employee;voidset_namechar*;voidset_ageshortaage=a;voidset_salaryfloatssalary=s;1;~employeedelete[]name;;employee::employeename=;age=0;salary=0.0;voidemployee::set_namechar*nname=newchar[strlenn+1];2namen;voidemployee::printcout<<姓名:<<name<<年龄:<<agc<<工资:<<salary<<endl;voidmainchar*na;shortag=0;floatsa=0;3;na=newchar[10];cin>>na>>ag>>sa;emp.set_namena;emp.set_ageag;emp.set_salarysa;emp.print;43500.0;emp.print;5;emp.set_nameMary;emp.set_age23;emp.set_salary2500.0;emp.print;
[说明]以下程序的功能是实现堆栈的一些基本操作堆栈类stack共有三个成员函数empty判断堆栈是否为空push进行人栈操作pop进行出栈操作[C++程序]#includestdafx.h#include<iostreamh>eonstintmaxsize=6;classstackfloatdata[maxsize];inttop;public:stuckvoid;~stackvoid;boolemptyvoid;voidpushfloata;floatpopvoid;;stack::stackvoidtop=0;cout<<stackinitialized.<<endl;stack::~stackvoidcout<<stackdestoryed.<<endl;boolstack::emptyvoidreturn1;voidstack::pushfloataiftop==maxsizecout<<Stackisfull!<<endl;return;data[top]=a;2;floatstack::popvoidif3cout<<Stackisundcrflow!<<endl;return0;4;return5;voidmainstacks;coat<<nowpushthedata:;forinti=l;i<=maxsize;i++cout<<i<<;s.pushi;coat<<endl;cout<<nowpopthedata:;fori=1;i<=maxsize;i++cout<<s.pop<<;
某程序的目标代码为43981个字节将其写到以字节编址的内存中以80000H为首地址开始依次存放则存放该目标程序的末地址为
[说明]函数encode和decode分别通过参数传递实现对字符串的变换和复原返回值均为处理以后的字符串长度变换函数encode顺序考察已知字符串的字符按以下规则逐组生成新字符串1若已知字符串的当前字符不是数字字符则复制该字符于新字符串中2若已知字符串的当前字符是一个数字字符且它之后没有后继字符则简单地将它复制到新字符串中3若已知字符串的当前字符是一个数字字符并且还有后继字符设该数字值为n则将其后继字符重复复制n+1次到新字符串中4以上述一次变换为一组在不同组之间另插入一个下划线‘_’用于分隔例如encode函数对字符中26a3t2的变换结果为666_a_tttt_2函数decode用于经函数encode处理的字符中即复制不连续相同的单个字符而将一组连续相同的字符不超过10个变换成一个用于表示重复次数的数字符和一个重复出现的字符并在复原过程中掠过变换函数为不同组之间添加的一个下划线字符注假定调用变换函数encode时的原始字符串中不包含下划线字符[函数]intencodechar*instrchar*outstrchar*ip*opc;intkn;ip=instr;op=outstr;while*ipif*ip>=’0’&&*ip<=’9’&&*ip+ln=*ip-’0’+1;c=1;fork=0;k<n;k++*op++=c;else*op++=*ip;2;ip++;ifop>outstr3;*op=’/0’;4;intdecodechar*instrchar*outstrchar*ip*opc;intn;ip=instr;op=outstr;while*ipc=*ip;n=0;while*ip==c&&n<105;n++;ifn>1*op++=’0’+n-1;*op++=c;if*ip==’_’ip++;*op=’/0’;4;
[说明]下面的词典类Dic实现了简单的英译汉功能程序运行后的输出为我是一个学生[C++程序]#include<iostream.h>#include<string.h>#defineMax100classDicinttop;charwords[Max][12];charmean[Max][20];public:Dietop=0;voidaddcharw[]charm[]strcpywords[top]w;strcpymean[top]m;1;voidtranscharstr[]inti=0j=0k=0s;charw[12]h[200];whilelifstr[i]!=’’&&str[i]!=’/0’w[j++]=str[i];//读取单词的一个字符记录在w中elsew[j]=’/0’;fors=0;s<top;s++ifstrcmpwords[s]w20break;ifs<top//找到了翻译成对应的mean[s]strcpywmean[s];j=3;else//未找到翻译成unknownstrcpywunknown;j=9;fors=0;s<j;s++h[k++]=w[s];ifstr[i]==’/0’4;break;j=0;i++;cout<<h<<endl;;voidmainDicobj;obj.addI我;obj.addam是;obj.addstudent学生;obj.adda一个;obj.trans5;
[说明]本程序将自然数12N2N=5按蛇形方式逐个顺序存入N阶矩阵令n=N-1则矩阵中的每一元素可用aij标记其中ij0≤ij≤n分别为其所在行的行号和所在列的列号蛇形方式顺序存放的方法是从an0开始到a0n为止依次填入由1递增的自然数交替地对每一斜列从左上角向右下角或从右下角向左上角排列程序的输出为[程序]#include<stdio.h>#include<math.h>#defineSIZE.10inta[SIZE][SIZE]k;voidwriteintn/*输出矩阵*/intij;fori=0;i<=n;i++forj=0;j<=njj++printf%4da[i][j];printf/n;voidmakelineintrow_startintcol_startintrow_end/*完成矩阵一条斜线的整数填写*/intijsign;sign=1>=01:-1;fori=row_startj=col_start;row_end-i*sign>=0;i+=signj+=signa[i][j]=2;voidmakeArrayintn/*完成矩阵每条斜线的整数填写*/intd;ford=1;d<=3;d++ifd<=n+1ifd%2makeline4;elsemakelinen+1-d0n;elseifd%2makeline5;elsemakeline0d-n-12*n-d+1;voidmainintnN=5;k=1;n=N-1;makeArrayn;writen;
[说明]本程序的功能是产生一个抽奖游戏中的随机数组合抽奖的规则是从自然数1至50中无重复抽取6个数为了保证抽取的无重复性将50个自然数放在数组source中每抽取了一个数就用数组的最后一个数来改写这个被抽中的数并把数组的长度减1为使输出更为清晰把抽取出来的6个数放在数组target中经过排序Arrays类中的sou方法实现排序然后输出注Math.random方法返回一个在0包含到1不包含之间的随机浮点数[Java代码]importjava.util.*;publicclassDrawOutpublicstaticvoidmainString[]argsintn=50;intk=6;int[]source=newint[n];forinti=0;i<1;i++source[i]=i+1;int[]target=newint[k];//将抽中的数字从source数组中取出放入到target数组forinti=0;i<2;i++intr=intMath.random*3;target[i]=source[r];....[r]=4;5;Arrays.sorttarget;forinti=0;i<targetlength;i++System.out.prinflntarget[i];
[说明]函数PrintprimeintUpBound的功能是输出1到UpBound以内的全体素数[函数2.1]voidPrintPrimeintUpBoundprintf2;fori=3;i<UpBound;i+=2intk=sqrti;forj=3;j<=k;1/*检查i是否有3到k以入的奇因数*/if2break;fi3printf%di;[函数2.2说明]递归函数invertinta[]intkintk的功能是将数组a中的前k个元素逆置[函数2.2]voidinvertinta[]intkintt;if4invert5;t=a[0];a[0]=a[k-1];a[k-l]=t;
[说明]当用户启动html浏览器并首次打开下面的html文档时JavaApplet小程序在第一个显示面板上显示字符串HelloWorld在第二个显示面板上画一条直线[Java代码]importjava.awt.*;importjavax.swing.*;publicclassHelloWorldAppletextendsJAppletpubhcvoid12str=HetloWorld;JLabellabel=newJLabelstr;this.getContentPane.addlabel;importjava.applet.Applet;importjava.awt.Graphics;publicclassAppletPaintextends3publicvoidpaint4g.drawLine00300200;[HTML文档]<html><head><title>HTMLTestPage</title></head><body><appletcode=5width=300height=100></applet><appletcode=AppletPaint.classwidth=300height=100></applet></body></html>
[说明]本程序使用类来管理员工的通讯地址信息已知程序的输出为输出记录5姓名王丽华街道地址中华路15号市襄樊市省湖北省邮政编码430070[C++程序]#include<iostreamh>#include<stringh>classemployee.protected:charname[10];charstreet[20];charcity[10];char1[10];charpost[7];intno;2:3char[]char[]char[]char[]char[]int;voidchangenamecharn[]strcpynamen;voidchangestreetchars[]strcpystreets;voidchangecitycharc[]strcpycityc;voidchangeprovcharp[]strcpyprovp;voidchangenointnnm4;voiddisplay;;employee::3charn[]chars[]charc[]charp1[]charp2[]intnamstrcpynamen;strcpystreets;strcpycityc;strcpyprovp1;strcpypostp2;no=nam;voidemployee::displaycont<<输出记录:<<no<<endl;cout<<姓名:<<name<<endl;coot<<街道地址:<<street<<endl;cout<<市:<<city<<endl;cout<<省:<<prov<<endl;cout<<邮政编码:<<post<<endl;voidmainemployeecmp王华中华路15号武汉市湖北省4300701;emp.changename五丽华;emp.changecity襄樊市;emp.changeno5;5;
[函数2.1说明]求任意两个正整数的最大公约数的欧几里德算法用辗转相除法求正整数m和n的最大公约数并返回该公约数[函数2.1]voidfunc1intmintnr=m%nwhiler<>01n=r2returnn[函数2.2说明]判断101~200之间有多少个素数并输出所有素数用一个数分别去除2到sqrt这个数如果能被整除则表明此数不是素数反之是素数[函数2.2]voidfunc2intmikh=0leap=1;printf/n;form=101;m<=200;m++3;fori=2;i<=k;i++if4leap=0;break;ifleapprintf%-4dm;5;ifh%10==0printf/n;leap=1;printf/nThetotalis%dh;
[说明]本程序中预设了若干个用户名和口令用户输入正确的用户名后可以查找对应的口令一旦输入结束标记end程序结束[C++程序]#include<iostream.h>#include<string.h>classUserprotected:charuser[10];charpass[7];public:Userchar[]char[];1returnuser;2returnpass;;User::Usercharu[]charp[]strcpyuseru;strcpypassp;voidmainUserua[]=UserLi123456Userwang654321UserSong666666charname[10];while1cout<<输入用户名:;cin>>name;if3==0break;forinti=0;i<3;i++ifstrcmpnameua[i].getuser==0cout<<密码:<<ua[i].getpass<<endl;4;if5cout<<该用户不存在!<<endl;
[函数8.1说明]现考虑编写一个扑克游戏只用一副无大小王的扑克扑克的花色suit分为SpadeHeartDiamond和Club每门花色的牌共13张面值rank分别为2345678910JackQueenKing和Ace每张扑克牌应包含如下信息惟一的ID号1~52花色面值背面图案的编号等每张扑克牌的操作有判断两张扑克牌是相同花色吗相同面值吗判断一张扑克牌是给定的花色吗是给定的面值吗请补充扑克牌类Card类的声明和实现代码要求选取适当形式的数据成员描述每张扑克牌的信息同时以成员函数的形式实现指定的操作[C++程序]constenumSUITSPADE=0HEARTDIAMONDCLUBconstenumRANKTWO=0THREEFOURFIVESIXSEVENEIGHTNINETENJACKQUEENKINGACEclassCardpublic1intidmIDidmSuitid1/13mRankid-1%13boolIsSameSuitconstCard&rhsretumthis==&rhs2boolIsSankRankconstCard&rhsreturnthis==&rhsfalse:mRank==rhs.mRankboolIsSuitintsuitreturn3boolIsRankintrankreturnmRank==rankprivatestaticintnBackImg//背面图案constintmIDconstintmSuitconstintmRank[函数8.2说明]输入一字符串将其中所有的小写字母转换为大写字母大写字母转换为小写字母然后显示输出转换后的字符串[C++程序]#include<iostream.h>classvectorinta;intb;publicvectorintx=0inty=0axbydoubleoperator*4doublec5;returncvoidinputintxintya=xb=yvoidoutputcout<<’’<<a<<’’<<b<<<<end1;voidmainvectorx1020y//定义xyz三个矢量类对象并将x置初值1020doubled//定义实数d以存放点乘结果y.input23//给y赋值为25d=x*y//两矢量点乘x.output//输出矢量xy.output//输出矢量ycout<<d<<end1//输出点乘结果
[函数2.1说明]下面程序的功能是将由键盘输入的某个十进制数转换成对应的R进制数并输出这里R是2到16的整数由键盘输入例如输入n=128base=13后的输出为9B[函数2.1]#include<stdio.h>maincharb[16]=’0’’1’’2’’3’’4’’5’’6’’7’’8’’9’’A’’B’’C’’D’’E’’F’;intc[64]ni=0base;printfEnteranumber:;scaaf%d&n;printfEnternewbase:;scanf%d&base;doc[i]=1;i++;n=n/base;while2;printfTransmitnewbase:;for--i;i>=0;--iprintf%c3;[函数2.2说明]所谓回文字符中是指正序和逆序拼写相同的字符串例如astrtsaadgdtdgda等下面函数intfunchar*str的功能是判断字符串str是否是回文当字符串是回文时函数返回1否则返回0[函数2.2]intfunchar*strintijl;fori=0;str[i]!=’/0’;i++;l=i/2;forj=0i--;j<=1;4if5return0;return1;
[函数2.1说明]函数strcpy的功能是将字符串str2的内容复制到字符申str1[函数2.1]1strcpychar*slr1constchar*str2char*temp;while*str2!=’/0’*cp++=2;3=’/0’;returnstr1;[函数2.2说明]函数intstrcmpconstchar*str1constchar*str2的功能是按字典序比较两个字符串str1和str2的大小当str1<str2时返回-1当str1>str2时返回1否则返回0[函数2.2]intstrcmpconstchar*str1constchar*str2while*str1==*str2if*s1==4return0;s1++;5;if*str1<*str2return-1;return1;
[说明]本程序接收输入的学生信息包括学号姓名成绩原样输出信息并计算学生的平均成绩其中学生类Stud除了包括no学号name姓名和grade成绩数据成员外还有两个静态变量sum和num分别存放总分和人数另有一个构造函数一个普通成员函数disp和一个静态成员函数avg用于计算平均分[Java代码]publicclassStudpublicintno;publicStringname;publicdoublegrade;public1doublesum=0;publicstaticintnum=0;publicStudintnoStringnamedoublegradethis.no=no;this.name=name;this.grade=grade;this.sum=2;3;publicstaticdoubleavgreturn4;publicvoiddispSystem.out.printlnthis.no+/t+this.name+/t+this.grade;publicstaticvoidmainString[]argsStud[]students=newStud1Li81newStud2Zhao84.5newStud3Zhang87;System.out.pfintlnno/tname/tgrade;students[0].disp;students[1].disp;students[2].disp;System.out.printlnavg=+5;
[说明]本程序接收输入的学生信息包括学号姓名成绩原样输出信息并计算学生的平均成绩其中学生粪Stud除了包括no学号name姓名和grade成绩数据成员外有两个静态变量sum和num分别存放总分和人数另有一个构造函数一个普通成员函数disp和一个静态成员函数avg用于计算平均分[C++程序]#include<stdio.h>#include<string.h>classStudintno;charname[10];intdeg;1intsum;staticintnum;public:Studintncharna[]intdno=n;deg=d;strcpynamena;2;3;staticdoubleavgreturn4;voiddispprintf%-5d%-8s%3d/nnonamedeg;;intStud::sum=0;intStud::num=0;voidmainStuds11Li81s22Zhao84.5s33Zhang87;printf/nNo.NameGrade/n;s1.disp;s2.disp;s3.disp;printfAvg=%g/n/n5;
[说明]编写一个Applet程序接受HTML文件传递的整数参数根据该参数指定Applet中文本框的长度编写对应的HTML文件运行这个Applet[Java代码]importjava.applet.*importjava.awt.*publicclasschuangdicsextends1TextFieldtf=newTextFieldinttfLength=0publicvoidinittrytfLength=Integer.parseInt2lengthtf.setColumnstfLengthaddtfcatchNumberFormatExceptionnfetf.3HTML文件传人的参数格式错误addtf[HTML代码]<html><head><title>4</title></head><body><hr><appletcode=chuangdicswidth=700height=150><paramname=lengthvalue=20>5<hr></body></htmI>
[说明]本程序中预设了若干个用户名和口令用户输入正确的用户名后可以查找对应的口令一旦输入结束标记end程序结束[Java代码]importjava.io.*:publicclassUserpublicStringuser;publicSiringpass;publicUserpublicUserStringuStringpuser=u;pass=p;publicString1returnthis.user;publicString2returnthis.pass;publicstaticvoidmainString[]argsUserua[]=newUserLi123456newUserwang654321newUserSong666666;whiletrueInputStreamReaderreader=newInputStreamReaderSystem.in;BufferedReaderinpul=newBnfferedReaderreader;System.out.printEnteryourname:;Stringname=null;tryname=input.readLine;catchIOExceptionexif3break;inti;fori=0;i<3;i++ifname.equalsua[i].getUserSystem.out.println密码:+ua[i].getPass;4;if5System.out.println该用户不存在!;
[说明]Kruskal算法是一种构造图的最小生成树的方法设G为一无向连通图令T是由G的顶点构成的于图Kmskal算法的基本思想是为T添加适当的边使之成为最小生成树初始时T中的点互相不连通考察G的边集E中的每条边若它的两个顶点在T中不连通则将此边添加到T中同时合并其两顶点所在的连通分量如此下去当添加了n-1条边时T的连通分量个数为1T便是G的一棵最小生成树下面的函数voidKruskalEdgeTypeedges[]intn利用Kruskal算法构造了有n个顶点的图edges的最小生成树其中数组father[]用于记录T中顶点的连通性质其初值为father[i]=-1i=01n-1表示各个顶点在不同的连通分量上若有father[i]=jj>-1则顶点ij连通函数intFindintfather[]intv用于返回顶点v所在树形连通分支的根结点[函数]#defineMAXEDGE1000typedefstructintv1;intv2;EdgeType;voidKruskalEdgeTypeedges[]intnintfather[MAXEDGE];intijvf1vt2;fori=0;i<n;i++father[i]=-1;i=0;j=0;whilei<MAXEDGE&&j<1vf1=Findfatheredges[i].v1;vf2=Findfatheredges[i].v2;if23=vf1;4;printf%3d%3d/nedges[i].v1edges[i].v2;5;intFindintfather[]intvintt;t=v;whilefather[t]>=0t=father[t];returnt;
[说明]下面程序的功能是将多个文件的内容同时输出在屏幕上文件名都作为参数传入命令执行为catfile1file2file3即同时输出file1file2file3的内容[程序]#include<stdio.h>#include<stdlib.h>voidfileeopyFILE*ifpFILE*ofpintc;whilec=getc1!=EOFputec2;intmainintargechar*argv[]FILE*fp;while3>0iffp=fopen4r==NULLprintfCan’topenfile/n;return1;elsefilecopyfpstdout;fclose5;return0;
热门题库
更多
中级系统集成项目管理工程师
中级网络工程师
中级信息系统管理工程师
初级程序员
中级软件设计师
初级网络管理员
初级信息处理技术员
中级数据库系统工程师
中级多媒体应用设计师
高级系统分析师
高级网络规划设计师
高级系统架构师
中级信息系统监理师
初级通信工程师
中级通信工程师
通信新技术、新业务知识