• 请补充函数fun(),该函数的功能是:把ASCII码为奇数的字符从字符串str中删除,结果仍然保存在字符串str中。字符串str从键盘输入,其长度作为参数传入函数fun()。
    例如,输入“abcdef”,输出“bdf”。
    注意:部分源程序给出如下。
    请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
    试题程序:
    include <stdio.h>
    define N 80
    void fun(char s[],int n)
    {
    int i, j;
    j=0;
    for(i=0;【 】;i++)
    {
    if(【 】)
    s [j++]-s ;
    }
    【 】;
    }
    main ( )
    {
    int i=0, strlen=0;
    char str ;
    clrscr ();
    printf ("\nInput a string: \n");
    gets (str);
    while (str     !='\0')
    {
    strlen++;
    i++;
    }
    fun(str, strlen);
    printf("\n*** display string ***\n");
    puts (str);
    }

    正确答案:ins%2=0s= '\0'ins%2=0s= '\0' 解析:第一空:变量n为字符串的长度,所以字符数组的下标的取值范甲是从0到n-1。第二空:如果当前字符的ASCII码对2取余等于0,就说明这个字符的ASCII码为偶数,故不能删除,而是将它存于字符串s中。第三空:通过保留ASCII码为偶数的字符的力法,来实现删除ASCII码为奇数的字符的目的。处理结束后,还要在字符串s的最后加上结束标记符'\0'。
  • 2021年07月15日 21时47分来自  问答库 >> 计算机类
  • 评论 0
  • 手机玩微博

    手机版 手机端
    Powered by 日新微博 © 2018 - 2020 日新网