请补充函数fun(),该函数的功能是:依次取出字符串中所有的小写字母以形成新的字符串,并取代原字符串。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include<stdio.h>include<conio.h>void fun(char *s){int i=0;char *p=s;while(【 】){if (*p>='a'&&*p<='z'){s[i]=*p;【 】;}p++;}s[i]=【 】;}main()

题目

请补充函数fun(),该函数的功能是:依次取出字符串中所有的小写字母以形成新的字符串,并取代原字符串。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

试题程序:

include<stdio.h>

include<conio.h>

void fun(char *s)

{

int i=0;

char *p=s;

while(【 】)

{

if (*p>='a'&&*p<='z')

{

s[i]=*p;

【 】;

}

p++;

}

s[i]=【 】;

}

main()

{

char str[80];

clrscr();

printf("\nEnter a string:");

gets(str);

printf("\n\nThe string is:\%s\n",str);

fun(str);

printf("\n\nThe string of changing

is:\%s\n",str);

}


相似考题
更多“请补充函数fun(),该函数的功能是:依次取出字符串中所有的小写字母以形成新的字符串,并取代原字符 ”相关问题
  • 第1题:

    规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函 数时,不得使用c语言提供的字符串函数。 例如,字符串中的内容为:****A*BC*DEF * G*******删除*后字符串中的内容应当 是:ABCDEFG。 注意:部分源程序在文件PROGl.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。


    正确答案:


    【考点分析】
    要删除字符串中所有*号需要用循环语句遍历字符串,用
    判断语句判断字符是否为*号,由此可以决定该程序应使用循
    环判断结构。
    【解题思路】

  • 第2题:

    请编一个函数fun(char*str),该函数的功能是把字符串中的内容逆置。 例如,字符串中原有的字符串为asdfg,则调用该函数后,串中的内容为gfdsa。 请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。 试题程序:


    正确答案:

    【解析】在fun()函数中,首先求行字符串的长度,然后通过循环进行字符交换。要注意的是,如果字符串长度是奇数,则最中间的元素在逆置前后的位置是没有改变的。

  • 第3题:

    请编写fun函数,将字符串逆序存放并输出。例如,当字符串为"This Is a c Program",输出:"margorP c a sI sihT"。


    编程题3:函数fun3将字符串中的字符按逆序输出,但不改变字符串中的内容。

  • 第4题:

    下列给定程序中,函数proc()的功能是:依次取出字符串中所有的数字字符,形成新的字符串,并取代原字符串。 例如原始字符串是“ab45c6djfd789”,则输出后的字符是“456789”。 请修改函数proc()中的错误,使它能得出正确的结果。 注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。 试题程序:


    正确答案:

  • 第5题:

    请补充fun()函数,该函数的功能是:把字符的ASCII码中为奇数的字符从字符串str中删除,结果仍然保存在字符串str中,字符串str从键盘输人,其长度作为参数传人fun()函数。

    例如,输入“abcdef”,则输出“bdf”。

    注意:部分源程序给出如下。

    请勿改动main()函数和其他函数中的任何内容,仅在mare()函数的横线上填入所编写的若干表达式或语句。

    试题程序:


    正确答案:


    【解析】先判断ASCⅡ码的奇偶。
    第一空:根据主函数“fun(str,len);”调用语句,其中len为字符串str的长度,用来控制循环。根据主函数中对应的调用语句,补全fun()函数定义,第一空填“fun(chars[],intn)”。
    第二空:“s[j++]=s[i];”语句中j的变量在使用前要对其取值进行初始化,因为数组下标是由0开始的,初始化值为0,所以第二空填“j-0”。
    第三空:新生成的字符串要加尾符标志,所以第三空填“s[j]=ˊ\0ˊ”。