Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数组或结果或数组返回到主函数C_C - Fatal编程技术网

将数组或结果或数组返回到主函数C

将数组或结果或数组返回到主函数C,c,C,嗨,我有一个小功能,从句子中删除这个词,它以2个辅音开头。有以下功能: char * fun_zod(char * sak) { char * sep = " "; //Zodziu atskirejas - tarpas char * zodis = strtok(sak,sep); //Nurodome kad sakini suskirstytume i zodzius po viena char * zodmas[20]; int i = 0; z

嗨,我有一个小功能,从句子中删除这个词,它以2个辅音开头。有以下功能:

char * fun_zod(char * sak)
{
    char * sep = " "; //Zodziu atskirejas - tarpas
    char * zodis = strtok(sak,sep); //Nurodome kad sakini suskirstytume i zodzius po viena
    char * zodmas[20];
    int i = 0;
    zodmas[0] = zodis;   //Iraso atskirai kiekviena zodi i masyva
    while (zodis != NULL)
    {
        if (zodis == NULL)
        break;
        i++;
        zodis = strtok(NULL,sep);
        zodmas[i] = zodis;
    }
    int n=i;
    for(int j = 0;j < n;j++)
    {
       if (!( zodmas[j][0] == 'a' || zodmas[j][0] == 'e' || zodmas[j][0] == 'i' || zodmas[j][0] == 'o' || zodmas[j][0] == 'u' ) && !( zodmas[j][1] == 'a' || zodmas[j][1] == 'e' || zodmas[j][1] == 'i' || zodmas[j][1] == 'o' || zodmas[j][1] == 'u' ))
       {
           zodmas[j]="";
       }

    }
    for (i=0;i < n; i++)
    {
        printf("%s ", zodmas[i]);
    }
}
char*fun_zod(char*sak)
{
char*sep=“”;//Zodziu atskirejas-tarpas
char*zodis=strtok(sak,sep);//Nurodome kad sakini suskirstytum i zodzius po viena
char*zodmas[20];
int i=0;
zodmas[0]=zodis;//伊拉索·阿特斯基拉伊·基克维安·佐迪·马西瓦
while(zodis!=NULL)
{
if(zodis==NULL)
打破
i++;
zodis=strtok(空,sep);
zodmas[i]=zodis;
}
int n=i;
对于(int j=0;j
char*fun\u zod(char*sak,int*n,char**zodmas)
{                                                                              
char*sep=“”;//Zodziu atskirejas-tarpas
char*zodis=strtok(sak,sep);//Nurodome kad sakini suskirstytum i zodzius po viena
int i=0;
zodmas[0]=zodis;//伊拉索·阿特斯基拉伊·基克维安·佐迪·马西瓦
while(zodis!=NULL&&i<*n)
{                                                                          
if(zodis==NULL)
打破
i++;
zodis=strtok(空,sep);
zodmas[i]=zodis;
}                                                                          
*n=i;
对于(int j=0;j
main() { char*lineptr[MAXLINES];/*指向行的指针*/ //....// 对于(i=0;i#include <stdio.h> #include <stdlib.h> #include <string.h> int isvowel(int ch) { char *vowels = "AEIOUaeiou"; return (strchr(vowels, ch) != NULL); } void free_zod(char **zod) { int i = 0; while (zod[i] != NULL) free (zod[i++]); free (zod); } char **fun_zod(char * sak) { char *sep = " \r\n\t"; // weed out tabs and newlines too char *zodis; char **zodmas = NULL; int i = 0, len; zodmas = malloc(sizeof(char*)); zodmas[0] = NULL; // end marker zodis = strtok(sak,sep); while (zodis != NULL) { len = strlen(zodis); if (!isvowel(zodis[0]) && !isvowel(zodis[1]) && strlen(zodis)>=2) { zodis = ""; len = 0; } zodmas = realloc(zodmas, (i+2) * sizeof(char*)); zodmas[i] = malloc(len+1); // string space strcpy(zodmas[i], zodis); zodmas[++i] = NULL; // end marker zodis = strtok(NULL,sep); // next token } return zodmas; } int main (void) { char **zod; char input[201]; int i = 0; if (fgets(input, 200, stdin) == NULL) return 0; zod = fun_zod(input); // get array pointer while (zod[i] != NULL) // NULL is ends marker printf("%s\n", zod[i++]); free_zod(zod); return 0; }
one two three four five six seven eight nine ten eleven twelve
one


four
five
six
seven
eight
nine
ten
eleven