我一直收到一个关于write_file的参数的错误/警告,该参数从没有强制转换的整数中生成一个指针 .

我正在尝试将一个字符数组写入文件 . 我以为fprintf会收到一系列字符 .
这是代码:(结尾的错误信息)

# include <stdio.h>
# include <stdlib.h>

char take_char();
void write_file(char ch[10]);

int main(){
    char ch;
    ch = take_char();
    write_file(ch);
    printf("successfully worked");
    return 0;
}

char take_char(){
    char ch;
    printf("Please input a character:\n");
    scanf("%s", &ch);
    return ch;
}

void write_file(char ch[10]){
    FILE *fp;
    fp = fopen("C:\\Users\\Jormak\\Desktop\\C_practicing\\Projects\\file_main.txt","w");

    if (fp == NULL){
        printf("FILE did not open.");
    }
    else{
        printf("Successfully opened the file");
    }

    fprintf(fp,ch[10]);
    fclose(fp);
}

错误信息:

这是错误的:

main.c: In function ‘main’:
main.c:10:2: warning: passing argument 1 of ‘write_file’ makes pointer from     integer without a cast [enabled by default]
  write_file(ch[10]);
  ^
main.c:5:6: note: expected ‘char *’ but argument is of type ‘char’
 void write_file(char ch[10]);
      ^
main.c: In function ‘write_file’:
main.c:33:2: warning: passing argument 2 of ‘fprintf’ makes pointer from     integer without a cast [enabled by default]
  fprintf(fp,ch[10]);

^在/usr/include/stdio.h:29:0中包含的文件中,来自main.c:1:/usr/include/stdio.h:173:5:注意:预期'const char *'但是参数是输入'char'int _EXFUN(fprintf,(FILE * __ restrict,const char * __ restrict,...)^