下列给定程序中,函数fun()的功能是:在字符串str中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。例如,调用fun()函数之前给字符串输入ABCDeFGH,调用后字符串中的内容为 eABCDFGH。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include<stdio.h>/***************found************/fun(char *p){ char max, *q;int i=0;max=p[i];while (p[i]!=0){if (max<p[i]){/***************found************/p = q +i;max=p[i];}i++;}/***************found************/while (q<p){*q=*(q-1);q--;}p[0]=max;}main(){ char str[80];printf("Enter a string: "); gets(str);printf("\nThe original string: ");puts(str);fun(str);printf("\nThe string after moving: ");puts(str); printf("\n\n");}

下列给定程序中,函数fun()的功能是:在字符串str中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。例如,调用fun()函数之前给字符串输入ABCDeFGH,调用后字符串中的内容为 eABCDFGH。

请改正程序中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

include<stdio.h>

/***************found************/

fun(char *p)

{ char max, *q;int i=0;

max=p[i];

while (p[i]!=0)

{if (max<p[i])

{

/***************found************/

p = q +i;max=p[i];

}

i++;

}

/***************found************/

while (q<p)

{*q=*(q-1);

q--;

}

p[0]=max;

}

main()

{ char str[80];

printf("Enter a string: "); gets(str);

printf("\nThe original string: ");

puts(str);

fun(str);

printf("\nThe string after moving: ");

puts(str); printf("\n\n");

}


相关考题:

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

下列给定程序中,函数fun()的功能是:在字符串str中找出ASCII码值最小的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。例如,调用fun()函数之前给字符串输入fagAgBDh,调用后宁符串中的内容为AfaggBDh。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include<stdio.h>/*************found************/void fun(char p){char min,*q;int i=0;min=p[i];while(p[i]!=0){if(min>p[i]){/*************found*************/p=q+i;min=p[i];}i++;}while(q>p){*q=*(q-1);q--;}p[0]=min;}main(){char str[80];printf("Enter a string:");gets(str);printf("\nThe original string:");puts(str);fun(str);printf("\nThe string after moving:");puts(str);printf("\n\n");}

下列给定程序中,函数fun()的功能是:从N个字符串中找出最长的那个中,并将其地址作为函数值返回。各字符串在主函数中输入,并放入一个字符串数组中。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include <string.h>include <stdio.h>define N 5define M 81/*************found**************/fun(char (*sq) [N]){int i; char *sp;sp=sq[0];for{i=0;i<N;i++)if(strlen(sp)<strlen(sq[i]))sp=sq[i];/*************found**************/return sq;}main (){char str[N][M], *longest; int i;printf("Enter %d lines:\n ",N);for(i=0;i<N;i++) gets(str[i]);printf("\nThe %d string :\n ",N);for(i=0;i<N;i++) puts(str[i]);longest=fun(str);printf("\nThe longest string :\n ");puts(longest);}

下列给定程序中,函数fun()的功能是:统计字符串substr在字符串srt中出现的次数。例如,若字符串为aaas 1 kaaas,子字符串为as,则应输出2。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include <stdio.h>fun (char *str, char *substr){int i, j, k, num=0;/*************found**************/for (i=0, str [i], i++)for (j=i, k=O; substr [k]==str [ j ]; k++, j ++ )if (substr [k+l]==' \0'){num++;break;}return num;}main ( ){ char str[80],substr[80];printf("Input a string: ");gets (str);printf("Input a sbustring: ");gets (substr);printf ("%d\n ", fun (str, substr) );

函数fun的功能是:将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一含新串放在t所指的数组中。例如,若s所指字符串中的内容为:“ABCDEFGl23456”,其中字符A的ASCII码值为奇数,因此应当删除:其中字符B的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除;而字符2的ASCII码值为偶数,所在数组中的下标也为偶数,因此不应当删除,其他依此类推。最后t所指的数组中的内容应是:“246”。注意:部分源程序存在文件PROGl.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

下列给定程序中,函数fun()的功能是将字符串s中位于偶数位置的字符或ASCII码为奇数的字符放入字符串t中(规定第一个字符放在第0位中)。例如:字符串中的数据为ADFESHDI,则输出应当是 AFESDI。请改正程序中的错误,使它能得到正确结果。注意;不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include <conio.h>include <stdio.h>include <string.h>define N 80/************found*************/void fun(char s,char t[]){int i,j=0;for(i=0;i<strlen(s);i++)/*********found*+************/if(i%2=0 || s[i]%2!=0)t[j++]=s[i];t[j]='\0';}main(){char s[N],t[N];clrscr();printf("\nPlease enter string s:");gets(s);fun(s,t);printf("\nThe result is:%s\n",t);}

下列给定程序中函数fun的功能是:统计substr所指的字符串在str所指的字符串中出现的次数。 例如,若字符串为aaas lkaaas,子字符串为as;则应输出2。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件MODll.C中,不得增行或删行,也不得更改的程序的结构!

下列给定程序中,函数fun()的功能是:将str所指字符串中的字母转换为按字母序列的后续字母(Z转换A,z转换a),其他字符不变。请修改函数fun()中的错误,得出正确的结果。注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。试题程序:

请补充fun()函数,该函数的功能是:把字符的ASCII码中为奇数的字符从字符串str中删除,结果仍然保存在字符串str中,字符串str从键盘输人,其长度作为参数传人fun()函数。例如,输入“abcdef”,则输出“bdf”。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在mare()函数的横线上填入所编写的若干表达式或语句。试题程序: