国家计算机二级考试C语言100套上机题(5)

2019-08-03 12:19

计算结果在main函数中输出。

例如,输入下面的矩阵:其转置矩阵为: 程序输出: 2 6 10 6 10 14 10 14 18

void fun (int a[3][3], int b[3][3]) {

int i,j;

for(i=0;i<3;i++) for(j=0;j<3;j++)

b[i][j]=a[i][j]+a[j][i]; /*把矩阵a加上a的转置,存放在矩阵b中*/ }

第三十四套

1.请补充函数fun,该函数的功能是:把数组aa中的偶数元素按原来的先后顺序放在原数组后面。

例如,若输入\,输出结果为\。 (1) aa[i]%2==0 (2) i

2.下列给定程序中,函数fun的功能是:将主函数中两个变量的值进行交换。例如,若变量a中的值为8,b中的值为3,则程序运行后,a中的值为3,b中的值为8。 请改正程序中的错误,使它能得出正确的结果。 (1)void fun(int *x, int *y) (2)t=*x; *x=*y; *y=t;

3.请编写函数fun,该函数的功能是:统计各年龄段的人数。N个年龄通过调用随机函数获得,并放入主函数的age数组中。要求函数把0至9岁年龄段的人数放在d[0]中,把10至19岁年龄段的人数放在d[1]中,把20至29岁年龄段的人数放在d[2]中,依此类推,把100岁(含100岁)以上年龄的人数都放在d[10]中。结果在主函数中输出。 void fun(int *a, int *b) {

int i,j;

for(j=0;j

b[j]=0; /*数组b初始化为0]+) if(a[i]>=100)

b[10]++; /*如果年龄大于等于100,b[10]自增1]+; /*如果年龄小于100,则将其分别统计到b[a[i]/10]中*/ }

第三是五套

1.程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的功能是:将形参a中的数据进行修改,把修改后的数据作为函数值返回主函数进行输出。

例如,若传给形参a的数据中学号、姓名和三门课的成绩依次是:10001、\、95、80、88,修改后的数据应为:10002、\、96、81、89。

请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 (1) struct student (2) a.name (3) a.score[i]

2.假定整数数列中的数不重复,并存放在数组中。下列给定程序中函数fun的功能是:删除数列中值为x的元素。变量n中存放数列中元素的个数。 请改正程序中的错误,使它能得出正确的结果。 (1)if(p==n) return -1; (2)a[i]=a[i+1];

3.学生记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组中,请编写函数fun,其功能是:把分数最低的学生数据放入b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生人数。 int fun(STREC *a,STREC *b) {

int i,j=0,n=0,min; min=a[0].s;

for(i=0;i

*(b+j)=a[i];j++;n++; }

return n; }

第三十六套

1.请补充main函数,该函数的功能是:将字符串str中的字符向前移动一位,原来在第一个位置上的字符移动到字符串尾,结果仍然保存在原字符串中。 例如,输入\?\,则结果输出\?h\。 (1) str[i+1] (2) str[i]=ch 2.下列给定程序中,函数fun实现的功能是:统计一个无符号整数中各位数字值为0的个数,通过形参传回主函数,并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为0的位的个数为3,各位上数字值最大的是8。 请改正函数fun中的错误,使它能得出正确的结果。 (1)if(t==0)

(2)*zero=count;

3.请编写函数fun,该函数的功能是:移动字符串中的内容,移动的规则是把第1~m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。

例如,字符串中原有的内容为ABCDEFGHIJK,m的值为3,移动后,字符串中的内容应该是DEFGHIJKABC。

void fun (char *w,int m) {

int i,j;

char t;

for(i=1;i<=m;i++) /*进行m次的循环左移*/ { t=w[0];

for(j=1;w[j]!=′\\0′;j++) /*从第2个字符开始以后的每个字符都依次前移一个字符*/

w[j-1]=w[j];

w[j-1]=t; /*将第1个字符放到最后一个字符中*/ } }

第三十七套

1.下列给定程序中,函数fun的功能是:将形参s所指字符串中下标为奇数的字符取出,并按ASCII码大小递增排序,将排序后的字符存入形参p所指字符数组中,形成一个新串。 例如,形参s所指的字符为:baawrskjghzlicda,执行后p所指字符数组中的字符串应为:aachjlsw。

请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 (1)t=i (2) i (3) ′\\0′或0

2.下列给定程序中函数fun的功能是:用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num)为止。

例如,程序运行后,输入0.0001,则程序输出3.1414。 请改正程序中的错误,使它能输出正确的结果。 (1)while(fabs(t)>=num) (2)t=s/n;

3.编写函数fun,其功能是:删除一个字符串中指定下标的字符。其中,a指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存指定的下标。

例如,输入一个字符串world,然后输入3,则调用该函数后的结果为word。 void fun (char a(), char b(), int n) {

int i,k=0;

for(i=0;a[i]!=′\\0′;i++)

if(i!=n) /*将不是指定下标的字符存入数组b中*/ b[k++]=a[i];

b[k]=′\\0′; /*在字符串最后加上结束标识*/ }

第三十八套

1.给定程序的功能是:判断字符ch是否与串str中的某个字符相同,若相同什么也不做,若不同则插在串的最后。

(1) != (2) str[1]或*(str+1) (3) s,c

2.下列给定的程序中,fun函数的功能是:将p所指的字符串中每个单词的最后一个字母改成大写(这里的\单词\是指有空格隔开的字符串)。 例如,若输入:

I am a student to take the examination

则应输出:I aM A studenT tO takE thE examinatioN 请改正程序中的错误,使它能得出正确的结果。 (1)if(*p==′ ′)

(2)*(p-1)=toupper( *(p-1));

3.编写函数fun,w是一个大于10的无符号整数,若w是n(n≥2)位的整数,则函数求出w的后n-1位的数作为函数值返回。

例如,w值为5923,则函数返回923;若w值为923,则函数返回23。 unsigned fun(unsigned w) {

if(w>=10000)

return w000; /*求出n位整数w的后n-1位的数*/ if(w>=1000) return w00; if(w>=100) return w0; if(w>=10) return w; }

第三十九套

1.函数fun的功能是:从三个形参a、b、c中找出中间的数,并作为函数值返回。 例如,当a=3,b=5,c=4时,中间的数为4。 (1) a (2) a (3) b

2.下列给定程序中,函数fun的功能是:求整数x的y次方的低3位值。例如,整数5的6次方为15625,此值的低3位值为625。

请改正程序中的错误,使它能得出正确的结果。 (1)for(i=1;i<=y;i++) (2)t=t00;

3.请编写函数fun,该函数的功能是:将M行N列的二维数组中的数据,按行的顺序依此放到一维数组中,一维数组中数据的个数存放在形参n所指的存储单元中。 例如,若二维数组中的数据为: 33 33 33 33 44 44 44 44 55 55 55 55

则一维数组中的内容应该是33 33 33 33 44 44 44 44 55 55 55 55 void fun (int (*s)[10], int *b, int *n, int mm, int nn) {

int i,j,k=0;

for(i=0;i

*n=k; /*通过指针返回元素个数*/ }

第四十套

1.下列给定程序中,函数fun的功能是:在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则不做任何处理。

例如,若s所指字符串为baacda,c中的字符为a,执行后s所指字符串为baaaacdaa。 请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 (1) ′\\0′ (2) 0 (3) c

2.在主函数中从键盘输入若干个数放入数组中,用0结束输入并放在最后一个元素中。下列给定程序中函数fun的功能是:计算数组元素中所有值为正数的平均值(不包括0)。 例如:数组中元素中的值依次为:39,-47,21,2,-8,15,0,则程序的运行结果为19.250000。 请改正程序中的错误,使它能得出正确的结果。 (1)double sum=0.0; (2)sum/=c;

3. 编写函数fun,其功能是:根据以下公式计算s,并计算结果作为函数值返回,n通过形参传入。 例如:若n的值为11时,函数的值为1.833333 float fun(int n) {

int i,s1=0; float s=0.0;

for(i=1;i<=n;i++) {

s1=s1+i; /*求每一项的分母*/

s=s+1.0/s1; /*求多项式的值*/ }

return s; }

s1=s1+i; /*求每一项的分母*/

s=s+1.0/s1; /*求多项式的值*/ }

return s; }

第四十一套

1.下列给定程序中,函数fun的功能是:将形参s所指字符串中的所有字母字符顺序前移,其他字符顺序后移,处理后将新字符串的首地址作为函数值返回。

例如,若s所指字符串为:asd123fgh543df,处理后新字符串为:asdfghdf123543。 请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 (1) s[i] (2) k (3) '\\0'或0

2.下列给定程序中函数fun的功能是:将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换成t2所指字符串,所形成的新串放在w所指的数组中。要求t1和t2所指字符串的长度相同。

例如,当s所指字符串中的内容为:\,t1所指串中的内容为\,t2所指子串中的内容为\时,结果在w所指的数组中的内容应为\。 请改正程序中的错误,使它能得出正确的结果。 (1)while (*w)


国家计算机二级考试C语言100套上机题(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:市政临时占道施工方案(排版+全面内容) - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: