问答题
给定程序MODI1.C中函数fun的功能是: 比较两个字符串,将长的那个字符串的首地址作为函数值返回。
请改正函数fun中指定部位的错误, 使它能得出正确的结果。
注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!
给定源程序:
#include
char fun(char *s, char *t)
{ int sl=0,tl=0; char *ss, *tt;
ss=s; tt=t;
while(*ss)
{ sl++;
(*ss)++;
}
while(*tt)
{ tl++;
(*tt)++;
}
if(tl>sl) return t;
else return s;
}
main()
{ char a[80],b[80],*p,*q; int i;
printf("\nEnter a string : "); gets(a);
printf("\nEnter a string again : "); gets(b);
printf("\nThe longer is :\n\n\"%s\"\n",fun(a,b));
}
【参考答案】
此题暂无答案,小编努力补充中……
热门
试题
问答题
给定程序中,函数fun的功能是根据形参i的值返回某个函数的值。当调用正确时, 程序输出: x1=5.000000, x2=3.000000, x1*x1+x1*x2=40.000000 请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构! 给定源程序: #include double f1(double x) { return x*x; } double f2(double x, double y) { return x*y; } __1__ fun(int i, double x, double y) { if (i==1) return __2__(x); else return __3__(x, y); } main() { double x1=5, x2=3, r; r = fun(1, x1, x2); r += fun(2, x1, x2); printf( nx1=%f, x2=%f, x1*x1+x1*x2=%f n n ,x1, x2, r); }
问答题
请编写函数fun,函数的功能是: 移动字符串中的内容,移动的规则如下: 把第1到第m个字符,平移到字符串的最后, 把第m+1到最后的字符移到字符串的前部。 例如, 字符串中原有的内容为: ABCDEFGHIJK, m的值为3, 则移动后, 字符串中的内容应该是: DEFGHIJKABC。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include #include #define N 80 void fun1(char *w) * 本函数的功能是将字符串中字符循环左移一个位置 * { int i; char t; t=w[0]; for(i=0;i<strlen(w)-1;i++) w[i]=w[i+1]; w[strlen(w)-1]=t; } void fun(char *w, int m) * 可调用fun1函数左移字符 * { } main() { char a[N]= ABCDEFGHIJK ; int m; printf( The original string: n );puts(a); printf( n nEnter m: );scanf( %d ,&m); fun(a,m); printf( nThe string after moving: n );puts(a); printf( n n ); NONO(); }