首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:首先把b所指字符串中的字符按逆序存放,然后将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:首先把b所指字符串中的字符按逆序存放,然后将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c
admin
2018-10-21
48
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:首先把b所指字符串中的字符按逆序存放,然后将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c所指数组中,过长的剩余字符接在c所指的数组的尾部。例如,当a所指字符串中的内容为“abcdefg”,b所指字符串中的内容为“1234”时,e所指数组中的内容应为“a4b3c2d1efg”;而当a所指字符串中的内容为“1234”,b所指字符串的内容为“abedefg”时,c所指数组中的内容应该为“1g23e4dcba”。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<string.h>
void fun(char*a,char*b,char*c}
{
int i,j;char ch;
i=0;j=strlen(b)﹣1;
/*********found*********/
while(i>j)
{ch=b
;b
=b[j];
b[j]=ch;
i++;j﹣﹣;
}
while(*a||*b){
/*********found*********/
If(*a)
{*c=*=a;c++;a++;}
if(*b)
{*c=*b;c++;b++;}
}
*c=0;
}
main()
{
char s1[100],s2[100],t[200];
printf("\nEnter s1 string:");
scanf("%s",s1);
printf("\nEnter s2 string:");
scanf("%s",s2);
fun(s1,s2,t);
printf("\nThe result is:%s\n",t);
}
选项
答案
(1)while(i<j) (2)if(*a)
解析
(1)由i和j定义的初始值可知,此处应该判断i是否小于j,所以应改为while(i<j)。
(2)此处将if错写成If,这个错误比较简单,但往往不容易发现。
转载请注明原文地址:https://kaotiyun.com/show/Qcxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后的输出结果是【】。main(){intX==1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1
以下程序的输出结果是【】。#includemain(){chara,b;for(a=0;a
设有如下变量定义:doublea=3.500000;floatb=2.5;intm=2,n=3;则表达式“(float)(m+n)/2+(int)a%(int)b”的值是()。
设有如下程序#include<stdio.h>main(){int**k,*j,i=100;j=&i;k=&j;printf("%d\n"”,**k);}上述程序的输
有如下说明:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是______。
有以下程序:intfun(intn){if(n==1)return1;elsereturn(n+fun(n-1));}main(){intX;scanf("%d",&x);x=fun(x);printf("%
若有如下程序;main(){intm=-i;printf("%d,%u,%o,%X",m,m,m,m);}则程序运行后的输出结果是()。
以下程序的输出结果是()。main(){inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=p;p=q;q=r;printf("%d,%d,%d,%d\n",*p,*q,a,b);}
以下程序的功能是:输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。main()(inti,j;for(i=0;i<i0;i++){j=i*10+6;if(())continue;
下列程序的运行结果是______。voidfun(int*a,int*B){int*k;k=a;a=b;b=k;}main(){inta=3,b=6,*x’&a,*y
随机试题
营养学
已知矩阵A=,B=,则=()
下列试验属于碳水化合物代谢试验的是
项目雇员考核的作用是()。
下列关于资本监管的说法,错误的是()。
为铲除封建制度的束缚,资产阶级启蒙思想家提出了以自然法理论为基础的()。
物理意义上的物要成为法律关系客体需要具备什么条件()
设f(x)在[0,1]上有定义,且exf(x)与e-f(x)在[0,1]上单调增加.证明:f(x)在[0,1]上连续.
对新信息系统进行评价的目的是:①检查信息系统的目标、功能和各项指标是否达到了设计要求;②检查信息系统中______;③根据评审和分析的结果,找出系统的薄弱环节并提出改进意见。
______areafraidofdifficulties,andwearealldetermined.
最新回复
(
0
)