1求x的n次方(10分)
题目内容:编写求x的n次方的递归函数,在主函数调用并输出。(x为double型,n为整型,函数类型为double型)
输入格式:
%lf%d
输出格式:
%f
输入样例:
4 3
输出样例:
64.000000
#include <stdio.h>
double display(double x,int n)
{
double z=1.000000;
if(n==0)
z=z;
else z=x*display(x,n-1);
return z;
}
int main()
{
double x,sum;
int n;
scanf("%lf%d",&x,&n);
sum=display(x,n);
printf("%f",sum);
return 0;
}

输入: 4 3
输出 :64.000000
2输出最大、最小数(10分)
题目内容:编写函数,通过键盘输入10个整数,找出其中最大的数和最小的数,返回到主调函数中输出。
输入格式:
%d
输出格式:
max=%d,min=%d
输入样例:
2 3 4 1 7 6 8 9 26 35
输出样例:
max=35,min=1
#include <stdio.h>
#define N 10
int find1(int a[],int n)
{
int j,max;
for(j=1,max=0;j<N;j++)
{
if(a[max]<a[j])
max=j;
}
return a[max];
}
int find2(int a[],int n)
{
int i,min;
for(i=1,min=0;i<N;i++)
{
if(a[min]>a[i])
min=i;
}
return a[min];
}
int main()
{
int i;
int a[N];
for(i=0;i<N;i++)
scanf("%d",&a[i]);
printf("max=%d,min=%d",find1(a,N),find2(a,N));
return 0;
}

输入:2 3 4 1 7 6 8 9 26 35
输出:max=35,min=1
3任意整数转换为千分位分隔的字符形式。(10分)
题目内容:
编写函数,对于任意输入的一个整数,转换为千分位分隔的字符形式,在主函数中调用并输出。
输入格式:
%d
输出格式:
%c 或 putchar()
输入样例:
123456
输出样例:
123,456
#include <stdio.h>
#define N 100
void ten(int n)
{
char c=',';
int i,j,tag;
int a[N]={0};
for(i=0;n;i++)
{
a[i]=n%10;
n/=10;
}
for(tag=i-1;tag>=0;--tag)
{
printf("%d",a[tag]);
if(tag%3==0&&tag!=0)
printf("%c",c);
}
}
int main()
{
int n;
int a[N]={0};
scanf("%d",&n);
ten(n);
return 0;
}

输出:123456
输出:123,456
这篇博客涵盖了C语言编程的三个练习,包括使用递归实现求x的n次方,读取10个整数并找出最大最小值,以及将整数格式化为千分位形式。每个练习都提供了输入输出样例,并强调了关键的函数实现和数据处理技巧。

被折叠的 条评论
为什么被折叠?



