我0分?我觉得我只是说法跟答案不一样罢了。谢谢指导!!!
二级必过!!! 圈内达人 2015-09-10 07:19:55
1523 30 0

第10课 编程题真题

编写一个函数fun,要求输入的字符串放在a数组中,将不是指定下标的字符存入数组b中,n中存放指定的下标。
例如,输入一个字符串: World,然后输入3,则调用该函数后的结果为: Word。  输入一个字符串:wonderful 然后输入4 则结果为wondrful 
注意: 部分源程序在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

【微答案】
void fun(char p1[], char p2[])
{
int i,j;
for(i=0;p1[i]!='\0';i++);
for(j=0;p2[j]!='\0';j++)
p1[i++]=p2[j];
p1[i]='\0';
}

【微分析】
本题用两个循环完成操作,第1个循环的作用是求出第1个字符串的长度,即将i指到第1个字符串的末尾。第2个循环的作用是将第2个字符串的字符连到第1个字符串的末尾。最后在第1个字符串的结尾加上字符串结束标识′\0′。

我:

#include <stdio.h>

#include <string.h>

#define LEN 20


void fun (char a[], char b[], int n)

{int i,j;

for(i=0,j=0;i<strlen(a);i++)

if(i!=n)

b[j++]=a[i];

b[j]=0;






}


main( )

{   char str1[LEN], str2[LEN] ;

    int n ;

    void NONO (  );


    printf("Enter the string:\n") ;

    gets(str1) ;

    printf("Enter the index of the char deleted:") ;

    scanf("%d", &n) ;

    fun(str1, str2, n) ;

    printf("The new string is: %s\n", str2) ;

    NONO() ;

}



问题来自: 编程题真题

共 30 个回答

您还没有登录,所以不能回复该问题