综合训练编程题.doc

上传人:wux****ua 文档编号:8966338 上传时间:2020-04-02 格式:DOC 页数:5 大小:27.50KB
返回 下载 相关 举报
综合训练编程题.doc_第1页
第1页 / 共5页
综合训练编程题.doc_第2页
第2页 / 共5页
综合训练编程题.doc_第3页
第3页 / 共5页
点击查看更多>>
资源描述
1. 请编写一个函数fun,其功能是:删除字符串中的数字字符。例如,输入字符串为:48CTYP9R6,则输出:CTYPR。部分源程序已经给出,请勿改动主函数的内容。#include “stdio.h”#include “string.h”void fun(char item);void main() char item100; gtes(item); fun(item); printf(“The string:%sn”,item); void fun(char item)/*删除字符串中的数字字符*/ char item1100; int i=0,j=0; while(itemi!=n) if(itemi=0& itemi=9)i+;else item1j+=itemi+; item1j=n; strcpy(item,item1);2. 从键盘上读入一字符串存入字符数组xx中,请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应位置上,最后调用函数WriteDat()将结果xx输出。替代关系如下: f(p)=p*11%256其中,p是数组xx中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)值小于32,则该字符不变,否则用f(p)所对应的字符进行替代。设字符串的长度小于80个字符,部分源程序已给出。除增加必要的数据定义、函数参数外,请勿改动主函数的内容。#include void main() char xx80; gets(xx); encryptChar(); WriteDat();3. 设有数组:int a10=6012,5099,9012,7025,8088,9096,8080,3046,5082,2345;请编制函数jssort(),其功能是:要求按每个数的后三位的大小进行升序排序,然后调用函数WriteDat()将结果输出。部分源程序已给出。除增加必要的数据定义、函数参数外,请勿改动主函数的内容。#include void main() int a10=6012,5099,9012,7025,8088,9096,8080,3046,5082,2345;jssort(); WriteDat();4.编写一函数jsValue(int m, int k, int xx),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组xx并返回。然后调用函数WriteDat()将结果输出。部分源程序已给出。除增加必要的数据定义、函数参数外,请勿改动主函数的内容。#include void main() int m,n,zz100; scanf(“%d%d”,&m,&n); jsValue(m,n,zz); WriteDat ( )5.编写一函数jsValue(int bb),该函数的功能是:在三位数(100至999)中寻找符合条件的整数并依次从小到大存入数组b中,条件为:它既是完全平方数,又有两位数字相同,例如144、676是满足条件的数。最后调用函数WriteDat()将结果输出。部分源程序已给出。除增加必要的数据定义、函数参数外,请勿改动主函数的内容。#include void main() int b20, num; num=jsValue(b); WriteDat (num, b)6.编写一函数jsValue(),该函数的功能是:将一正整数序列k1,k2,,k9重新排列成一个新的序列。新序列中,比k1小的数据都在k1的前面(左边),比k1大的数据都在k1的后面(右边)。最后调用函数WriteDat()将结果输出。部分源程序已给出。除增加必要的数据定义、函数参数外,请勿改动主函数的内容。#include void main() int a9=6,8,9,1,2,5,4,7,3; jsValue(a); WriteDat (a)7.设某级数的前两项:a11,a21,以后各项具有如下关系: an=an-2+2an-1编写一函数jsValue(),该函数的功能是:对M10000,求出对应的n值,使其满足:sn=M,这里Sn=a1+a2+an。最后调用函数WriteDat()将结果输出。部分源程序已给出。除增加必要的数据定义、函数参数外,请勿改动主函数的内容。#include void main() jsValue(); WriteDat ()8.请编写一函数countvalue(),该函数的功能是:找出所有100以内满足i,i+4,i+10都是素数的整数i(i+10也在100之内)的整数i及其个数cnt以及这些i之和sum。#include int cnt,sum;void main() cnt=sum=0; countvalue( ); printf(“%d,%dn”,cnt,sum);9.从键盘上读取一个字符串存入字符数组xx中,请编写一函数convercharD(),该函数的功能是:把字符串中的所有小写字母改写成该字母的上一个字母,如果是字母a,则改写成字母z。大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变。例如:原文:Adb.Bcdza结果:Aca.Bbcyz把已处理的字符串仍存入数组xx中。最后调用函数WriteDat()将结果输出。部分源程序已给出。除增加必要的数据定义、函数参数外,请勿改动主函数的内容。#include void main()char xx80; gets(xx); convercharD(xx); WriteDat (xx)10.请编写一个函数jsvalue(),其功能是:求出5000到8000中满足条件:千位上的数加上个位上的数等于百位上的数加十位上的数。将这些数依次存放入一数组中,要求由函数返回满足条件的数的个数。最后由主函数将满足条件的数及该类数的个数输出。11.请编写一个函数void fun(char a, int k, int n),其功能是:删除字符串中指定下标开始的n个字符。其中,a指向字符串,k中存放指定的下标。例如,字符串内容为:Hellollo World!,k中的值为5,n中的值为3,则调用该函数的结果为:Hello World!。部分源程序已经给出,请勿改动主函数的内容。main() char s80=”Hellollo World!”; int k, n; puts(s); scanf(“%d,%d”,&k,&n); fun(s,k,n); puts(s);12.请编制一个函数fun(),其功能是:将s所指字符串中下标为奇数,同时ASCII值也为奇数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。例如,若s所指串中的内容为“ABCDEFG12345”同,其中C的ASCII码值虽然为奇数,但在数组中的下标为偶数,因此不能删除,而字符1的ASCII码值为奇数,在数组中的下标也为奇数,故应当删除,其他依次类推。最后,t所指的数组中的内容是“ABCDEFG24”。部分源程序已经给出,请勿改动主函数的内容。void main() char s100,t100; gets(s); fun(s,t); puts(t);13.规定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串前后连续的*号全部删除,中间的*号不删除。例如,若字符串中的内容为:*A*BC*DEF*G*,删除后,字符串中的内容应当是:A*BC*DEF*G。在编写函数时,不得使用C语言提供的字符串函数。部分源程序已经给出,请勿改动主函数的内容。void main() char s81; gets(s); fun(s); puts(s);14.编写一个函数insert(),其功能是:将字符串s2插入到字符串s1中第n个字符(即数组下标为n-1的元素)开始的位置上(不准利用C语言提供的任何字符串处理函数)。例如,键盘输入s1:How you!,s2:are ,n为5,则输出结果为:How are you!。部分源程序已经给出,请勿改动主函数的内容。void main() char s181,s210; int n; gets(s1); gets(s2); scanf(“%d”,&n); puts(s1; puts(s2); fun(s1,s2,n); puts(s1);)15.请写一个函数void sort(int num, int n),将num数组中前n个整数从大到小排序。编写一个main()函数,从键盘上输入一个正整数,求出该数是几位数,按从左到右的顺序显示各位数字,用这些数字组成一个最小正整数(调用sort函数),将以上三项结果输出。16.编写一个函数fun,其功能是:求Fibonacci数列中大于t的最小的一个数,结果由函数返回。例如,当t=1000时,函数值为1597。部分源程序已经给出,请勿改动主函数的内容。void main() int n=1000; printf(“n=%d,f=%dn”,n,fun(n);17.请写一个函数fun,其功能是:将s所指字符串中下标为偶数的字符删除,串中剩余字符形成的新串放在t所指数组中。例如,当s数组中的内容为:“ABCDEFGHIJK”时,在t数组中的内容应是:“BDFHJ”。部分源程序已经给出,请勿改动主函数的内容。void main() char s100,t100; gets(s); fun(s,t); puts(t); 18.编写一个函数fun,其功能是:计算正整数n的所有因子(1和n除外)之和作为函数值返回。例如,n=120时,函数值为239。部分源程序已经给出,请勿改动主函数的内容。void main() printf(“%dn”,fun(120);19.请编写一个函数fun,其功能是:将ss所指字符串中所有下标为奇数位置上的字母转换为大写字母(若该位置上不是字母,则不转换)。例如,若输入:“abc4Efg”,则应输出:”aBc4Efg”。部分源程序已经给出,请勿改动主函数的内容。void main() char tt81; gets(tt); fun(tt); puts(tt); 20. 请设计一个程序,功能如下:将一个4 X 4二维数组中全部元素逆时针旋转90度。编程要求:(1)编写函数int rotate (int a44,int b44),将数组a中元素逆时针旋转90度后的元素保存在数组b中,计算b数组主对角线上全部元素之和作为函数的返回值。(2)编写主函数main,从键盘读入16个数据放入一个二维数组中,调用rotate函数,将函数返回值及旋转后的二维数组全部元素按行输出。(3)使用以下测试数据: 旋转前: 1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16 旋转后: 13 14 15 16 9 10 11 12 5 6 7 8 1 2 3 4
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!