常见的C语言面试编程题
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
常见的C语言面试编程题
(1) 求n的阶乘,这是一个比较简单的题目,有很多方法,但用递归方法是最简单的了:
#include
int main()
{
long factorial(long n);
long n;
scanf("%ld",&n);
printf("%ld",factorial(n));
return 0;
}
long factorial(long d)//求阶乘
{
long m;
if(d<0)
{
printf("d的阶乘不存在!");
}
else if(d==0||d==1)
{
m=1;
}
else
{
m=d*factorial(d-1);
}
return m;
}
(2)从一个文件读取整数,对其进行排序,然后再将排序的结果输入到原来文件当中,这
是一个经常考的题目,即考你的文件操作,又考了排序,我在这里用的是选择排序
#include
int readtoarray(int *a,FILE *fp)//从文件里将整数读到数组里 {
int i=0;
if(fp==NULL)
{
exit(0);
}
while(fgetc(fp)!=EOF)
{
fscanf(fp,"%d",&a[i]);
printf("%d\n",a[i]);
i++;
}
return i;
}
void writetofile(int a[],FILE *fp,int i)//将数组写到文件里去{
int k = 0;
if(fp==NULL)
{
exit(0);
}
while(k
{
fprintf(fp,"%c%d",' ',a[k++]);
}
}
void selectionSort(int *a,int i)//选择排序 {
int m,n;
int tmp,min;