资源描述:
1C程序设计课程期末上机考试考试时间50分钟考试方式从下面的20题中随机抽取一题,再附加一题,共需完成2道题。附加题不事先给定分值分配第一题60分,第二题40分,共100分考试时间6具体时间与安排见网站通知1.请编写函数LONGFUNLONGINTX,功能是将长整型数X中每一位上为奇数的数依次取出,并逆序构成一个新数返回。例如程序运行时输入123456789,输出B97531。INCLUDELONGFUNLONGINTX{INTI0,M0,N0FOR{MX10IFM21NN10MXX/10IFX0BREAK}RETURNN}VOIDMAIN{LONGA,BPRINTF“PLEASEALONGINTNUM“SCANF“LD“,BFUNAPRINTF“BLD\N“,B}2.编写函数VOIDFUNCHARS,CHART,CHARP将未在字符串S中出现、而在字符串T中出现的字符,形成一个新的字符串放在P中,P中字符按原字符串中字符顺序排列,但去掉重复字符。例如当S为“12345“,T为“8624677“时,P中的字符为“867“当S为”GOODLUCK”,T为”THANKYOUVERYMUCH”时,输出”THANYVERM”INCLUDEINCLUDEINTTESTCHARS,INTN,CHARCH2{INTIFORI0IINTFUNINTM{INTA0,I0,SUM0FORI1I{AAISUMSUMAIFSUMMBREAK}RETURNI13}VOIDMAIN{INTXSCANF“D“,PRINTF“ND\N“,FUNX}4.编写函数VOIDFUNINTX,INTN,它的功能是删除有N个数据的数组X中所有包含数字6的数据,后续的剩余元素赋值为1。N为数组长度,规定X中数据都为正数。如程序运行时若输入12214616234161166391126713816删除后输出12211911381111111DEFINEN10INCLUDEINTFUNINTX,INTN{INTM0,I,J,FLAG,Y,PFORI0ILONGFUNINTHIGH,INTN{INTFLAG0,SUM0,I0,J0FORIHIGH1I1I{FORJ2JI{FLAGFLAG1SUMSUMI}IFFLAGNBREAK}RETURNSUM}VOIDMAIN{INTK,NSCANF“DD“,PRINTF“SUMLD\N“,FUNK,N}56.请编写函数INTFUNINTA,INTN,它的功能是把形参A所指数组中的偶数按原顺序依次存放到A0、A1、A2、中,把奇数从数组中删除,偶数个数通过函数值返回,以1作为有效数据的结束标志。例若输入123456789101112131415,输出2468101214N7INCLUDEINTFUNINTA,INTN{INTI,J0FORI0IVOIDFUNINTAMN{INTI,J,T,M,MAX,KFORI0IVOIDFUNINTX,CHARP{INTI,KXCHARS80FORI0I{IFX20SI 0 ELSESI 1 X/2IFX0BREAK}IFK0I,PIFKINTFUNCHARSSN,INTM,CHARS{INTI8SSTRCPYS,SS0FORI0I0STRCPYS,SSIRETURNSTRLENS}VOIDMAIN{CHARA8N,BNINTI,LENFORI0IINCLUDEINCLUDEVOIDFUNCHARS{INTI,JCHARA100FORI0,J0SI \0 I,J{AJSIIFSI 0 NSTRLENSIFN21{TSN1FORIN1I1I2SISI2S0T}IFN20{TSN2FORIN2I1I2SISI2S0T}}VOIDMAIN{CHARSTR80GETSSTRFUNSTRPUTSSTR}12.编写函数VOIDFUNCHARS1,CHARS2,功能是对形参S1所指字符串升序排序,并将排序后下标为偶数的字符取出,写入形参S2所指字符数组中,形成一个新串。例如,下面程序若输入THECPROGRAMMINGLANGUAGE,输出□□LTAEGGHMNOR。□表空格INCLUDEVOIDFUNCHARS1,CHARS2{INTI,J,L,XFORL0S1L \0 LFORI0IS1J1{XS1JS1JS1J1S1J1X}FORJ0,I0IVOIDFUNCHARS{INTI,JFORI0SI \0 IIFSI20{FORJISJ \0 JSJSJ1I}}VOIDMAIN{CHARA80GETSAFUNA11PUTSA}14.请编写一个函数INTFUNLONGINTX,它的功能是判断整数X是否是同构数。若是同构数,函数返回1;否则返回0。所谓“同构数”是指这样的数,它出现在它的平方数的右边。例如输入整数5,5的平方数是25,5是25中右侧的数,所以5是同构数,输出“YES“。要求X的值不大于10000。INCLUDEINTFUNLONGINTX{LONGM,AFORA10A10{MXXAIFXMRETURN1IFXX/A0RETURN0}}VOIDMAIN{INTXSCANF“D“,IFFUNX1PUTS“YSE“ELSEPUTS“NO“}15.编写取子字符串函数VOIDFUNCHARS1,CHARS2,INTM,INTN,其作用是将字符数组S2中从第M个字符开始的共N个字符拷贝到数组S1中;若S2中剩余字符不足N个,则取到尾部。程序运行时,当输入“ABCD123“、4,3时应输出“D12“;当我们输入“ABCD123“、4,6时应输出“D123“。注意,这里是将1作为起始计数。INCLUDEVOIDFUNCHARS1,CHARS2,INTM,INTN{INTI,A,BASTRLENS2BAVOIDFUNCHARSTR{INTIIFSTR0 A JPJ1PJP0PN}}VOIDMAIN{VOIDFUNINT,INT,INTINTX10{1,2,3,4,5,6,7,8,9,10},IFUNX,10,14FORI0I12345,输出A1B2C345,若输入ABCDE123,则输出A1B2C3DE。INCLUDEINCLUDEVOIDFUNCHARS1,CHARS2{INTI,J,KFORJ0,I1S2J \0 {FORKSTRLENS1KIKS1K1S1KS1IS2JJIIFS1II}}VOIDMAIN{CHARA100,B100VOIDFUNCHAR,CHARGETSA14GETSBFUNA,BPUTSA}19传说可以根据两个人的生日来计算其缘分方法将两个人的生日各位相加,将得到的数再一次各位相加,直到其值为一个一位数,此数即代表两个人的缘分例如,两个生日为19820523,19841111,则各位相加198252319841111得56再56得11再11得2,即为两人的缘分编写计算缘分程序,两个生日由键盘输入INCLUDE“STDIOH“INTFUNLONGX,LONGY{LONGSUM0,MXYM0||SUM10{SUMM10M/10IFM0SUM0}}RETURNSUM}VOIDMAIN{LONGX,YINTKSCANF“LDLD“,KFUN
展开阅读全文
如果觉得《中国海洋大学c语言上机作业 中国海洋大学c语言程序春季学期上机题考试题及答案.doc...》对你有帮助,请点赞、收藏,并留下你的观点哦!