未分类题
请补充函数fun(),该函数的功能是:把字符下标为非素数的字符从字符串sb中删除,把字符下标为素数的字符重新保存在字符串e口中。字符串sb从键盘输入,其长度作为参数传入函数fun()。
例如,输入“abcdefghijkl”,输出“cdfhl”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
试题程序:
include <stdio.h>
define N 80
void fun(char s[],int n)
{
int i, j, k, flag;
【 】;
for(i=0; i<n; i++)
{
if (i>1)
s [k++] =s [i];
flag=I;
for(【 】; j<i&&flag; j++)
if (i%j==0)
{
flag=0;
【 】
}
}
s [k]='/0';
}
main()
{
int i=0, strlen=0;
char str[N];
clrscr ();
printf('/n Input a string:/n');
gets (str);
while (str [i] !='/0')
{
strlen++;
i++;
}
fun (str, strlen);
printf('/n*** display string ***/n');
puts (str);
}
A.h>
【参考答案】
k=0j=2k--
k=0j=2k-- 解析:第一空:变量k声明时没有初始化,所以要在使用前初始化为0。第二空:......
(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)