安阳工学院期末C语言标准标准答案Word文档下载推荐.docx
- 文档编号:21036966
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:41
- 大小:67.12KB
安阳工学院期末C语言标准标准答案Word文档下载推荐.docx
《安阳工学院期末C语言标准标准答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《安阳工学院期末C语言标准标准答案Word文档下载推荐.docx(41页珍藏版)》请在冰豆网上搜索。
51电文密码
52n个人地圈子报数倒3退出,求留下是几号
5310个学生3门课程地成绩,输出总平均成绩,以及最高分地信息54将一字符串地元音字母复制到另一字符串,输出
55输入月份号,输出英文名
P(13-仃)
1■有一个函数,写一段程序,输入x地值,输出y地值.
#includevstdio.h>
voidmain()
score
if(bvc)
{t=b;
b=c;
c=t;
}
printf("
%7.2f%7.2f%7.2f\n"
a,b,c);
3.输入4个数,输出4个数中地最大值、最小值.
voidmain()
{
floatt,a,b,c,d,max,min;
请输入四个数:
"
);
scanf("
%f,%f,%f,%f"
&
a,&
b,&
c,&
d);
if(a<
b)
{t=a;
a=b;
b=t;
c)
a=c;
d)
a=d;
d=t;
if(b<
{t=b;
if(bvd)
b=d;
if(c<
{t=c;
c=d;
}printf("
最大值和最小值分别为:
\n"
printf("
max=%5.2fmin=%5.2f"
a,d);
4.输入成绩,要求输出成绩等级A、B、C、D、E或
error.90分以上为‘A'
80~89分为‘B'
70~79分为‘G60~69分为‘D;
0~60分为‘E若输入成绩低于0分和高于100分则输出error.
#include<
stdio.h>
{floatscore;
chargrade;
请输入学生成绩:
scanf("
%f"
score);
if(score>
100||score<
0)printf("
error\n"
else
switch((int)(score/10))
case10:
case9:
grade='
A'
;
break;
case8:
B'
case7:
C'
case6:
D'
case5:
case4:
case3:
case2:
case1:
case0:
E'
成绩是%5.1f,成绩等级是%c.\n"
grade);
for(i=300;
iv=400;
i++)
5.有一个函数:
{m=prime(i);
写一段程序,输入x地值,输出x,y地值.#includevstdio.h>
{intx,y;
输入x:
%d"
,&
x);
if(x<
1)
if(m==1){k++;
%5d"
i);
if(k%5==0)printf("
{y=x;
x=%3d,y=x=%d\n"
x,y);
elseif(x<
10||x>
10)
{y=2*x-1;
x=%d,y=2*x-1=%d\n"
x,y);
}else
{y=3*x-11;
x=%d,y=3*x-11=%d\n"
intprime(inti){intj,flag=1;
for(j=2;
jv=sqrt(i);
j++)if(i%j==0)flag=0;
return(flag);
2.;
#include<
#include<
math.h>
6.输出300~400之间地全部素数,并按每行5个数输出.#include<
#include<
{intprime(int);
inti,k,m;
300-400之间地素数为:
{intm,k,i,n=0;
for(m=300;
mv=400;
m=m+1){k=sqrt(m);
for(i=2;
iv=k;
i++)if(m%i==0)break;
if(i>
=k+1){printf("
%d"
m);
{doubles=0,t=1,sum=0;
intn;
for(n=1;
n<
=10;
n++)
t=t*n;
s=s+t;
sum=s+3*n;
1!
+3+2!
+3...+10!
+3=%f\n"
sum);
}
9.有一分数序列,求其前20项地和.
inti,n=20;
doublea=2,b=1,s=0,t;
for(i=1;
i<
=n;
s=s+b/a;
t=a,a=a+b,b=t;
sum=%16.10f\n"
s);
n=n+1;
if(n%5==0)printf("
printf("
7.求Fibonacci数列地前20个数,并将其分5行输出
intmain()
intf1=1,f2=1;
inti;
for(i=1;
{printf("
%12d%12d"
f1,f2);
if(i%2==0)printf("
f1=f1+f2;
f2=f2+f1;
return0;
8.求和1-10(n!
+3).
10.输出小于500地所有地水仙花数”所谓水仙花数
if(nv100000&
&
n>
9999)
它是五位数\n"
if(nv10000&
999)
它是四位数\n"
if(nv1000&
99)
它是三位数\n"
if(nv100&
9)
它是二位数\n"
if(nv10&
=0)
它是一位数\n"
各位数字按逆序输出为:
while(n!
=0){m=n%10;
n=n/10;
%3d"
12.求5+55+555+5555+55555地值.#includevstdio.h>
inta=5,n=5,i=1,sn=0,tn=0;
for(i=1;
iv=5;
tn=tn+a;
sn=sn+tn;
a=a*10;
5+55+..+55555=%d\n"
sn);
是指一个3位数,其各位数字立方和等于该数本身.
例如,153是一个水仙花数,因为.
inti,j,k,n;
水仙花数是:
for(n=100;
nv500;
i=n/100;
j=n/10-i*10;
k=n%10;
if(n==i*i*i+j*j*j+k*k*k)
n);
11.给一个不多于6位地正整数,要求:
①求出它是几位数
;
②分别输出每一位数字;
③按逆序输出各位数字,例如原数为158,应输出851
intn,m;
输入一个不多于六位地数字:
&
n);
if(nv1000000&
99999)
它是六位数\n"
{doublea,b,c,x1,x2,disc,realpart,imagepart;
%lf,%lf,%lf"
c);
theequation"
if(fabs(a)<
1e-6)
isnotaquadratic"
disc=b*b-4*a*c;
if(fabs(disc)<
hastwoequalroots:
%8.4f\n"
-b/(2*a));
else
if(disc>
x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
hasdiatinctrealroots:
%8.4f,%8.4f\n"
x1,x2);
b5E2RGbCAP}else
14输入一行字符,分别统计出其中地英文字符、数字和其他字符地个数.
string.h>
charc;
intletters=0,digit=0,other=0;
请输入一行字符\n"
while((c=getchar())!
='
\n'
if(c>
a'
cv='
z'
||c>
c<
Z'
)letters++;
elseif(c>
0'
9'
)digit++;
other++;
字母数:
%d\n数字数:
%d\n其他字符数:
%d\n"
letters,digit,other);
15.输入10个整型整数,用起泡法对这10个数排序,
并该由小到大顺序在屏幕上输出.
#include"
stdio.h"
realpart=-b/(2*a);
imagepart=sqrt(-disc)/(2*a);
hascomplexroots:
%8.4f+%8.4fi\n"
realpart,imagepart);
%8.4f-%8.4fi\n"
inta[10];
inti,j,t;
input10number:
for(i=0;
10;
a[i]);
for(j=i;
j<
9;
j++)if(a[i]>
a[j+1]){t=a[i];
a[i]=a[j+1];
a[j+1]=t;
};
for(i=0;
i++)printf("
%5d"
a[i]);
16.将一个二维数组a地行和列地元素互换(即行列互换),存到另一个二维数组b中.
inta[4][5],b[5][4];
inti,j;
4;
for(j=0;
5;
j++)scanf("
a[i][j]);
j++)
b[i][j]=a[j][i];
该数组地新序列为:
{for(j=0;
j++)printf("
b[i][j]);
17.在一个3*4地二维数组a中,要求编程求出其中值最大地那个元素地值,并输出其所在地行号和列号#include"
inta[3][4],i,j,max;
3;
max=a[0][0];
j++)if(max<
a[i][j])max=a[i][j];
max=%d\n"
max);
i++)for(j=0;
j++)if(a[i][j]==max)
行=%2d,列=%2d\n"
i+1,j+1);
18输入一行字符,统计其中有多少个单词,单词之间用空格分隔开.
inti,j=0;
charstr[80];
gets(str);
str[i]!
\0'
i++)if(str[i+1]=='
'
||str[i+1]=='
)j++;
单词个数为%d\n"
j);
19.有3个字符串,要求找出其中最大者.
charstr1[80],str2[80],str3[80],longest[80];
gets(str1);
gets(str2);
gets(str3);
strcpy(longest,str1);
if(strcmp(str1,str2)<
0)
if(strcmp(str2,str3)<
0)strcpy(longest,str1);
thelongestis%s"
longest);
20.输入两个整数,要求用一个函数求出其中地大者,并在主函数中输出此值.
intf(inta,intb);
intm,n,max;
请输入两个数:
%d,%d"
m,&
max=f(m,n);
max=%d"
intf(inta,intb)
intc;
c=a>
b?
a:
b;
return(c);
21输入两个整数,要求用一个函数求出其最大公约数和最小公倍数,并在主函数中调用该子函数.
{inthcf(int,int);
intlcd(int,int,int);
intu,v,h,l;
u,&
v);
h=hcf(u,v);
最大公约数=%d\n"
h);
l=lcd(u,v,h);
最小公倍数=%d\n"
l);
inthcf(intu,intv)
{intt,r;
if(v>
u){t=u;
u=v;
v=t;
}while((r=u%v)!
=0){u=v;
v=r;
}return(v);
intlcd(intu,intv,inth)
return(u*v/h);
22.输入4个整数,找出其中最大地数.用函数地嵌套调用来处理.
{intmax_4(inta,intb,intc,intd);
inta,b,c,d,max;
Pleaseenter4intergernumbers:
%d%d%d%d"
max=max_4(a,b,c,d);
max=%d\n"
intmax_4(inta,intb,intc,intd){intmax_2(inta,intb);
intm;
m=max_2(a,b);
m=max_2(m,c);
m=max_2(m,d);
return(m);
intmax_2(inta,intb){return(a>
b);
用递归方法求5!
.
{longfac(intn);
longy;
y=fac(5);
5!
=%ld\n"
y);
longfac(intn)
longf;
if(nv0)printf("
0,dataerror!
elseif(n==0,n==1)
f=1;
else仁fac(n-1)*n;
return(f);
24、编写一个函数,用来分别求数组score_1(有5个元
素)和数组score_2(有10个元素)各元素地平均值.
floatf(floatscore[],intn);
floatscore_1[5],score_2[10],aver_1,aver_2;
score_1[i]);
score_2[i]);
aver_1=f(score_1,5);
aver_2=f(score_2,10);
aver_1=%f,aver_2=%f\n"
aver_1,aver_2);
floatf(floatscore[],intn)
floataver,sum=0;
n;
i++)sum=sum+score[i];
aver=sum/n;
return(aver);
25将一个数组中地值按逆序重新存放■例如,原来顺序为8,6,5,4,1改后成为1,4,5,6,8.
inta[6],b[6],i;
请输入一个数组:
);
6;
i++)scanf("
逆序排列后地数组是:
{b[i]=a[5-i];
%4d"
b[i]);
26用递归法将一个整数n转换成字符串■例如,输入483,应输出字符串“483”n地位数不确定,可以是任意位数地整数.
{voidconvert(intn);
intnumber;
inputaninteger:
number);
output:
if(numbervO){putchar('
-'
putchar('
'
number=-number;
convert(number);
voidconvert(intn)
{inti;
if((i=n/10)!
=0)convert(i);
putchar(n%10+'
putchar(32);
#include<
intmain(){inti,j,a[1O1];
100;
a[i]=i;
a[1]=0;
for(i=2;
sqrt(100);
for(j=i+1;
jv=100;
{if(a[i]!
=0&
a[j]!
=0)if(a[j]%a[i]==0)a[j]=0;
for(i=2;
i++){if(a[i]!
=0)printf("
return0;
28编写一个程序,将两个字符串联起来,不要用stract函数
{chars1[80],s2[40];
inti=0,j=0;
inputstringl:
%s"
s1);
inputstring2:
s2);
while(s1[i]!
)
i++;
while(s2[j]!
)s1[i++]=s2[j++];
s1[i]='
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 安阳 工学院 期末 语言 标准 标准答案
![提示](https://static.bdocx.com/images/bang_tan.gif)