当前位置:文档之家› C语言基础编程题

C语言基础编程题

if(list[i]==x) {
returni; } } returnq; }
5-7 使用函数的选择法排序(10 分)
输入一个正整数 repeat(0<repeat<10),做 repeat 次下列运算: 输入一个正整数 n(1<n<=10),再输入 n 个整数存入数组 a 中,用选择法将数组 a 中的元 素按升序排列,最后输出排序后的数组元素。 要求定义并调用函数 sort(a,n),它的功能是采用选择排序算法,将数组 a 的前 n 个元素 按从小到大的顺序排序,函数形参 a 的类型是整型指针,形参 n 的类型是 int,函数的类型 是 void。 输出格式:数据直接以空格分隔,最后的一个数据后面没有空格。 输入输出示例:括号内为说明,无需输入输出
输入样例:
3
(repeat=3)
(n=0,x=
(n=1,x=
(n=10,x=
输出样例:
p(0,= p(1,= p(10,=

时间限制:400ms

内存限制:64MB

代码长度限制:16kB

判题程序:系统默认

作者:王秀

单位:福州大学
题目判定
解题程序
#include<> intmain() { doublep(intn,doublex); intrepeat,ri,n; doublex,result; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++) { scanf("%d%lf",&n,&x); result=p(n,x); printf("p(%d,%.2lf)=%.2lf\n",n,x,result); } return0; }

作者:颜晖

单位:浙江大学城市学院
题目判定
#include<> intmain() {
doublefact(intn); intm,n; doublesum; scanf("%d%d",&m,&n); if(n>=m) sum=fact(n)/(fact(m)*fact(n-m));
printf("result=%.0lf\n",sum); return0; } doublefact(intn) { inti; doubles=1; for(i=1;i<=n;i++) {
m=a/b; sum=sum+m; i=i+1; j=j+2; a=a*i; b=b*j; } printf("PI=%.5lf\n",2+2*sum);
return0; }
5-3 判断素数(15 分)
输入一个正整数 m,如果它是素数,输出"YES",否则,输出"NO"(素数就是只能被 1 和
自身整除的正整数,1 不是素数,2 是素数)。
输入格式:
在一行中输入一个正整数 m。
输出格式:
对每一组输入,在一行中输出结果并换行。
输入样例:
17
输出样例:
YES
#include<> #include<> intmain() { inti,j,n; scanf("%d",&n); j=sqrt(n); for(i=2;i<=j;i++) if(n%i==0)break; if(i>=j&&n!=1) printf("YES\n"); else printf("NO\n"); return0; }
5-1
求幂之和(15
分)
本题要求编写程序,计算 sum=2^1+2^2+2^3+\cdots+2^nsum=21+22+23++2n。可以调
用 pow 函数求幂。
输入格式:
输入在一行中给出正整数 nn(\le≤10)。
输出格式:
按照格式“result=计算结果”输出。
输入样例:
5
输出样例:
result=62
s=s*i; } returns; }
5-9 判断数字字符(10 分)
编写函数,判断指定的字符是否是数字字符,如果是函数返回 1,否则函数返回 0.要求在主
doublep(intn,doublex) { doublet; if(n==0) t=1; elseif(n==1) t=x; else t=((2*n-1)*p(n-1,x)-(n-1)*p(n-2,x))/n; returnt; } 5-6 在数组中查找指定元素(10 分)
输入一个正整数 repeat(0<repeat<10),做 repeat 次下列运算:
\frac{\pi}{2}=1+\frac{1!}{3}+\frac{2!}{3\times5}+\frac{3!}{3\times5\times7}+\ cdots+\frac{i!}{3\times5\times\cdots\times(2\timesi+1)}+\cdots2π=1+31!+3×52!+3×5 ×73!++3×5××(2×i+1)i!+
19884
输出样例 1:
252013
输入样例 2:
12
输出样例 2:
00001
#include<> #include<> intmain() { inty,n,a,b,c,d,f[10],l=0; scanf("%d%d",&y,&n); for(inti=y;i<10000;i++) { a=i/1000; b=i/100%10; c=i%100/10; d=i%10; memset(f,0,sizeof(f)); f[a]=1; if(f[b]!=1) f[b]=1; if(f[c]!=1) f[c]=1; if(f[d]!=1) f[d]=1; intsum=0; for(intj=0;j<10;j++) { sum=sum+f[j]; } if(sum==n&&l==0) { printf("%d%04d\n",i-y,i); l++; } } return0; }

作者:王秀

单位:福州大学
题目判定
解题程序
#include<> #defineMAXN10 voidsort(inta[],intn); intmain() { inti,n,x,j; inta[MAXN]; scanf("%d",&x); for(j=0;j<x;j++) { scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); sort(a,n); printf("Aftersorted:"); for(i=0;i<n-1;i++) printf("%d",a[i]); printf("%d",a[i]); printf("\n"); } return0; } voidsort(inta[],intn) { inti,x,j,temp; for(i=0;i<n-1;i++) { x=i; for(j=i+1;j<n;j++) if(a[j]<a[x]) x=j; if(x!=i) { temp=a[x]; a[x]=a[i]; a[i]=temp; } } }
输入样例:
3(repeat=3) 4(n=4) 5176 3(n=3) 123 5(n=5) 54321
输出样例:
Aftersorted:1567 Aftersorted:123 Aftersorted:12345

时间限制:400ms

内存限制:64MB

代码长度限制:16kB
ቤተ መጻሕፍቲ ባይዱ

判题程序:系统默认
scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); scanf("%d",&x); res=search(a,n,x); if(res!=-1)
printf("index=%d\n",res); else
printf("Notfound\n"); } return0; } intsearch(intlist[],intn,intx) { inti,q=-1; for(i=0;i<n;i++) {
输入格式:
输入在一行中给出精度 eps,可以使用以下语句来读输入:
scanf("%le",&eps);
输出格式:
在一行内,按照以下格式输出\piπ 的近似值(保留小数点后 5 位):
PI=近似值
输入样例:
1E-5
输出样例:
PI=
#include<> #include<> intmain() {
doublea=1,b=3,i=1,j=3; doubleeps,m=1,sum=0; scanf("%le",&eps); while(m>eps) {
相关主题