欢迎来到天天文库
浏览记录
ID:26598468
大小:56.50 KB
页数:7页
时间:2018-11-27
《c程序设计课程期末上机考试》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《C程序设计》课程期末上机考试考试时间:40分钟考试方式:从下面的20题中随机抽取一题,再附加一题,共需完成2道题。分值分配:第一题60分,第二题40分,共100分考试时间:第十八周1.编写函数longfun(longx),它的功能是:将长整型参数x中每一位上为偶数的数依次取出,构成一个新数返回。高位仍在高位,低位仍在低位。例如:下面程序运行时输入:124578902,程序输出:24802.longfun(longx){}voidmain(){longa,b;printf("Enteranumber:"
2、);scanf("%ld",&a);b=fun(a);printf("b=%ld",b);}2.编写函数voidfun(intk,int*p),功能是:将参数k(2≤k≤32767)所有的不相同质因子升序写入p所指的一维数组中,以-1作为所有质因子的结束标志。例如:下面程序运行时若输入200,输出:25;若输入27720,输出:235711;若输入101,输出101。voidfun(intk,int*p){}voidmain(){intx,a[17]={0},i;do{printf("Enteran
3、umber(2-32767):");scanf("%d",&x);}while(x<2);fun(x,a);for(i=0;a[i]!=-1;i++)printf("%d",a[i]);printf("");}3.编写函数voidfun(int*x,intn),功能是:求出长度为n的数组x中的最大数与次最大数,并把最大数和a[0]对调,次最大数与a[1]对调,其余的数保持不变。下面程序运行时若输入:2461397058,则输出:9861327054。#defineN10voidfun(int*x,i
4、ntn){}voidmain(){inta[N],i;for(i=0;i5、i]被x[i]+x[0]代替,即x[n-1]=x[n-1]+x[0],然后对数组进行升序排序,并统计奇数个数返回。例如,下面程序若输入:3527911219输出:7891216203032n=2intfun(int*x,intn){}voidmain(){inta[8],i,n; for(i=0;i<8;i++)scanf("%d",&a[i]);n=fun(a,8);for(i=0;i<8;i++)printf("%d",a[i]);printf("n=%d",n);}5.编写函数intfun(i6、ntx,longinty),功能:计算满足表达式x0+x1+x2+...+xn7、复制到s所指的字符数组中,然后返回此最长字符串的长度。#defineN30intfun(char(*ss)[N],intm,char*s){}voidmain(){chara[8][N],b[N];inti,len;for(i=0;i<8;i++)gets(a[i]);len=fun(a,8,b);printf("len=%d,str=%s",len,b);}7.编写函数intcountw(char*str),统计字符串str中单词的个数。单词之间以空格,逗号,7句号作分隔,数字也看做单词。单词之间8、可能不止一个分隔符。如输入:It's10:10o'clock,Iamlate.屏幕上输出"Thereare6words."intcountw(char*str){}voidmain(){chars[200];gets(s);printf("Thereare%dwords.",countw(s));}8.编写函数voidfun(char*str),功能:字符串str中单词以空格作分隔,如果单词之间不止一个空格,则删除多余的空格,使单词之间
5、i]被x[i]+x[0]代替,即x[n-1]=x[n-1]+x[0],然后对数组进行升序排序,并统计奇数个数返回。例如,下面程序若输入:3527911219输出:7891216203032n=2intfun(int*x,intn){}voidmain(){inta[8],i,n; for(i=0;i<8;i++)scanf("%d",&a[i]);n=fun(a,8);for(i=0;i<8;i++)printf("%d",a[i]);printf("n=%d",n);}5.编写函数intfun(i
6、ntx,longinty),功能:计算满足表达式x0+x1+x2+...+xn7、复制到s所指的字符数组中,然后返回此最长字符串的长度。#defineN30intfun(char(*ss)[N],intm,char*s){}voidmain(){chara[8][N],b[N];inti,len;for(i=0;i<8;i++)gets(a[i]);len=fun(a,8,b);printf("len=%d,str=%s",len,b);}7.编写函数intcountw(char*str),统计字符串str中单词的个数。单词之间以空格,逗号,7句号作分隔,数字也看做单词。单词之间8、可能不止一个分隔符。如输入:It's10:10o'clock,Iamlate.屏幕上输出"Thereare6words."intcountw(char*str){}voidmain(){chars[200];gets(s);printf("Thereare%dwords.",countw(s));}8.编写函数voidfun(char*str),功能:字符串str中单词以空格作分隔,如果单词之间不止一个空格,则删除多余的空格,使单词之间
7、复制到s所指的字符数组中,然后返回此最长字符串的长度。#defineN30intfun(char(*ss)[N],intm,char*s){}voidmain(){chara[8][N],b[N];inti,len;for(i=0;i<8;i++)gets(a[i]);len=fun(a,8,b);printf("len=%d,str=%s",len,b);}7.编写函数intcountw(char*str),统计字符串str中单词的个数。单词之间以空格,逗号,7句号作分隔,数字也看做单词。单词之间
8、可能不止一个分隔符。如输入:It's10:10o'clock,Iamlate.屏幕上输出"Thereare6words."intcountw(char*str){}voidmain(){chars[200];gets(s);printf("Thereare%dwords.",countw(s));}8.编写函数voidfun(char*str),功能:字符串str中单词以空格作分隔,如果单词之间不止一个空格,则删除多余的空格,使单词之间
此文档下载收益归作者所有