威县做网站多少钱,西安网站建设成功建设,wordpress数据库出错,有域名有空间怎么做网站第37套#xff1a;
给定程序中#xff0c;函数fun的功能是:在形参ss所指字符串数组中#xff0c;查找含有形参substr所指子串的所有字符串并输出#xff0c;若没找到则输出相应信息。ss所指字符串数组中共有N个字符串#xff0c;且串长小于M。程序中库函数strstr(s1, s2)…第37套
给定程序中函数fun的功能是:在形参ss所指字符串数组中查找含有形参substr所指子串的所有字符串并输出若没找到则输出相应信息。ss所指字符串数组中共有N个字符串且串长小于M。程序中库函数strstr(s1, s2)的功能是在 s1串中查找s2子串若没有函数值为0若有为非0。 请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。 注意源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行也不得更改程序的结构 给定源程序
#include stdio.h
#include string.h
#define N 5
#define M 15
void fun(char (*ss)[M], char *substr)
{ int i,find0;
for(i0; i __1__ ; i)
if( strstr(ss[i], __2__) ! NULL )
{ find1; puts(ss[i]); printf(\n); }
if (find__3__) printf(\nDont found!\n);
}
main()
{ char x[N][M]{BASIC,C langwage,Java,QBASIC,Access},str[M];
int i;
printf(\nThe original string\n\n);
for(i0;iN;i)puts(x[i]); printf(\n);
printf(\nEnter a string for search : ); gets(str);
fun(x,str);
} 解题思路 本题是根据给定的字符串数组中查找指定的字符串如果存在则显示。 第一处利用for循环从几个字符串中进行查找程序中已经给定了N个字符串所以应填N。 第二处查找子串子串由形参substr传递所以应填substr。 第三处试题要求若没有找到函数值为0所以应填0。 给定程序MODI1.C中函数fun的功能是求三个数的最小公倍数。 例如给主函数中的变量x1、x2、x3分别输入15 11 2 则输出结果应当是330。 请改正程序中的错误使它能得出正确结果。 注意不要改动main函数不得增行或删行也不得更改程序的结构。 给定源程序
#include stdio.h
fun(int x, y, z )
{ int j,t ,n ,m;
j 1 ;
tj%x;
mj%y ;
nj%z;
while(t!0||m!0||n!0)
{ j j1;
tj%x;
mj%y;
nj%z;
}
return i;
}
main( )
{ int x1,x2,x3,j ;
printf(Input x1 x2 x3: ); scanf(%d%d%d,x1,x2,x3);
printf(x1%d, x2%d, x3%d \n,x1,x2,x3);
jfun(x1,x2,x3);
printf(The minimal common multiple is : %d\n,j);
} 解题思路 第一处: 函数中形参的定义不正确应改为fun(int x,int y, int z)。 第二处: 程序中三个数的最小公倍数是用j处理的所以应返回j的值。 假定输入的字符串中只包含字母和号。请编写函数fun它的功能是只删除字符串前导和尾部的号,串中字母之间的号都不删除。形参n给出了字符串的长度, 形参h给出了字符串中前导号的个数形参e给出了字符串中最后号的个数。在编写函数时不得使用C语言提供的字符串函数。 例如字符串中的内容为ABCDEFG*****删除后,字符串中的内容应当是ABCDEF*G。 注意: 部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其它函数中的任何内容仅在函数fun的花括号中填入你编写的若干语句。 给定源程序
#include stdio.h
void fun( char *a, int n,int h,int e )
{
}
main()
{ char s[81],*t,*f; int m0, tn0, fn0;
printf(Enter a string:\n);gets(s);
tfs;
while(*t){t;m;}
t--;
while(*t*){t--;tn;}
while(*f*){f;fn;}
fun( s , m,fn,tn );
printf(The string after deleted:\n);puts(s);
NONO();
} 解题思路 本题是考察对字符串的操作。
求出字符串的长度。利用循环把字符串中字符按要求仍存放在原字符串首址开始的位置上。 参考答案
void fun( char *a, int n,int h,int e )
{
char *pa ;
int j0,len0;
while(*p) {p; len;}
while(jlen-h-e) {
a[j]a[hj];
j;
}
a[j]0;
}