C语言重点30题Word下载.docx
- 文档编号:21183721
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:20
- 大小:19.86KB
C语言重点30题Word下载.docx
《C语言重点30题Word下载.docx》由会员分享,可在线阅读,更多相关《C语言重点30题Word下载.docx(20页珍藏版)》请在冰豆网上搜索。
math.h>
{inti=1,j=1;
floatpi=0;
while(fabs(1.0/i*j)>
=0.0001)
{pi+=1.0/i*j;
pi*=4;
pi=%f\n"
pi);
5.输出所有的水仙花数,所谓水仙花数是指一个三位正整数其各位数字立方和等于该数本身
例如:
153=13+53+33
{inti,a,b,c;
for(i=100;
i<
=999;
i++)
{a=i/100;
b=i%100/10;
c=i%10;
if(a*a*a+b*b*b+c*c*c==i)
%d\n"
i);
6.输出斐波那契数列的:
1,1,2,3,5,8,………的前40项,每行4项,即:
F1=1(n=1)
F2=1(n=2)
Fn=Fn-1+Fn-2(n>
=3)
{inti;
longf1=1,f2=1;
for(i=1;
=20;
{printf("
%12ld%12ld"
f1,f2);
if(i%2==0)printf("
\n"
);
f1=f1+f2;
f2=f1+f2;
7.输入10个整数到一维数组,输出其中最大数和最小数
{inta[10],i,max,min;
for(i=0;
10;
a[i]);
max=a[0];
min=a[0];
{if(a[i]>
max)
max=a[i];
if(a[i]<
min)
min=a[i];
max=%d,min=%d\n"
max,min);
8.以下程序是利用起泡法对键盘输入的10个整数进行由小到大排序
{inta[10],i,j,t;
9;
for(j=0;
j<
9-i;
j++)
if(a[j]>
a[j+1])
{t=a[j];
a[j]=a[j+1];
a[j+1]=t;
%4d"
a[i]);
9.以下程序是利用起泡法对键盘输入的10个整数进行由小到大排序
for(j=9;
j>
i;
j--)
if(a[j]<
a[j-1])
a[j]=a[j-1];
a[j-1]=t;
10.已定义含有30个元素的数组a,函数fun()的功能是按顺序每5个元素求其和,并将该值存放在数组b中
#defineN30
voidfun(inta[],intb[6])
{inti,j=0,s=0;
N;
{s+=a[i];
if((i+1)%5==0)
{b[j++]=s;
s=0;
}
{inta[N],b[6],i;
a[i]=2*i;
fun(a,b);
6;
b[%d]=%d\n"
i,b[i]);
11.输入一个字符串,将其倒序后输出
{inti,j;
charst[60],ch;
%s"
st);
for(i=0,j=strlen(st)-1;
j;
i++,j--)
{ch=st[i];
st[i]=st[j];
st[j]=ch;
%s\n"
12.输入字符串,将其中的非数字字符删除后,输出整个字符串
{charst[80];
inti=0,j=0;
while(st[i])
{if(st[i]>
='
0'
&
st[i]<
9'
)
st[j++]=st[i];
i++;
st[j]='
\0'
;
printf("
13.输出方阵中主对角线和、副对角线上元素的和sum1和sum2
#defineN3
{inta[N][N],i,j,sum1,sum2;
sum1=sum2=0;
a[i][j]);
{sum1+=a[i][i];
sum2+=a[i][N-1-i];
sum1=%d,sum2=%d\n"
sum1,sum2);
14.输出以下的杨辉三角的前10行
1
11
121
1331
14641
……………………………
………………………………
{inta[10][10],i,j,t;
{a[i][0]=1;
a[i][i]=1;
for(i=2;
for(j=1;
a[i][j]=a[i-1][j]+a[i-1][j-1];
{for(j=0;
=i;
a[i][j]);
15.写出程序的运行结果
voidfun(char*s,intnum[5])
5;
num[i]=0;
while(*s!
='
{i=-1;
switch(*s)
{case'
a'
:
case'
A'
{i=0;
break;
case'
e'
E'
{i=1;
i'
I'
{i=2;
o'
O'
{i=3;
u'
U'
{i=4;
if(i>
=0)num[i]++;
s++;
{chars[80];
intnum[5],i;
Pleaseinputastring:
"
gets(s);
fun(s,num);
Theresultis:
%3d\n"
num[i]);
当输入Thisisatree时,显示:
1
2
0
16.写出程序的运行结果
intfun(intn)
{staticinta=3;
intt=0;
if(n%2)
{staticinta=4;
t+=a++;
else
{staticinta=5;
returnt+=a++;
{inti,s=0;
3;
s+=fun(i);
运行结果__s=27_______
17.写出程序的运行结果
intfun()
{staticintx=0;
switch(x)
{case0:
t+=x++;
case1:
case2:
case3:
default:
returnt+=x++;
s+=fun();
运行结果___s=21_______
18.写出程序的运行结果
voidfun(intx)
{if(x/16)fun(x/16);
switch(x%16)
{case15:
F"
break;
case14:
E"
case13:
D"
case12:
C"
case11:
B"
case10:
A"
x%16);
{intx;
x);
fun(x);
当输入1978时,显示7BA。
19.写出程序的运行结果
voidfun(intn)
if(n!
=0)
{fun(n-1);
=n;
n);
{intn;
fun(n);
当输入5时,显示:
1
22
333
4444
55555
20.写出程序的运行结果
stdio.h>
voidfun(chars[])
charch;
for(i=0,j=strlen(s)-1;
{ch=s[i];
s[i]=s[j];
s[j]=ch;
}
{chars[3][5]={{'
'
B'
C'
D'
},{'
F'
G'
H'
}};
inti;
Theoldarrayis:
\"
%s\"
s[i]);
fun(s[i]);
Thenewarrayis:
ABCD"
EFG"
HI"
DCBA"
GFE"
IH"
21.写出程序的运行结果。
voidfun(inta[],inti,intj)
{intt;
if(i<
j)
{t=a[i];
a[i]=a[j];
a[j]=t;
j--;
fun(a,i,j);
{inta[3][4]={{1,2,3,4},{4,5,6},{7,8}};
inti,j;
4;
%3d"
{fun(a[i],0,3);
1234
4560
7800
4321
0654
0087
22.写出程序的运行结果。
voidsort(inta[],intn)
{inti,j,t;
n-1;
n-1-i;
a[j]=a[j+1];
a[j+1]=t;
{inta[5]={5,2,6},i;
sort(a,5);
Thesortedarrayis:
52600
00256
23.写出程序的运行结果
#defineMAX5
inta[MAX];
voidsub1()
MAX;
a[i]=i+i;
voidsub2()
{inta[MAX],i;
a[i]=i;
voidsub3()
{sub1();
sub3();
sub2();
运行结果:
02468
24.编写一函数fun(),判断形参x是否为素数,若是素数返回1,否则返回0
intfun(intx)
{inti,t=1;
for(i=2;
x;
i++)
if(x%i==0)t=0;
returnt;
if(fun(x))printf("
Yes!
elseprintf("
No!
25.编写一函数fun(),返回数组a中的最大值,要求:
必须利用指针形式访问数组
intfun(int*a,intn)
{inti,max;
max=*a;
for(i=1;
n;
if(*(a+i)>
max)max=*(a+i);
returnmax;
{inta[]={3,7,2,9,4,5},max;
max=fun(a,6);
max=%d\n"
max);
26.编写一函数fun(),将字符串中的数字字符删除
{inti,j=0;
for(i=0;
s[i]!
if(!
(s[i]>
s[i]<
))
s[j++]=s[i];
s[j]='
Pleaseinputastring(s):
fun(s);
s=%s\n"
27.编写主函数main(),完成以下输出结果,要求必须利用以给出的三个函数,不允许设置变量
输出结果:
0123456789
02468
#defineMAX10
{inti;
i++)a[i]=i;
voidsub2(intmax)
max;
i++)a[i]=i+i;
voidsub3(intb[],intmax)
i++)printf("
b[i]);
{sub1();
sub3(a,MAX);
sub2(MAX/2);
sub3(a,MAX/2)
sub1();
28.编写主函数main(),完成以下输出结果,要求必须利用给出的三个函数,不允许设置变量
43210
98765
voidsub2(inta[],intmax)
for(i=0,j=max-1;
a[i]=a[j];
a[j]=t;
sub2(a,MAX/2);
sub3(a,MAX/2);
sub2(a+MAX/2,MAX/2);
sub3(a+MAX/2,MAX/2);
29.编写主函数main(),完成以下输出结果,要求必须利用给出的三个函数,不允许设置变量
4321098765
30.编写一函数fun(),返回3×
4二维数组的最大值
intfun(inta[3][4])
{inti,j,max=a[0][0];
for(j=0;
j++)
if(a[i][j]>
max)max=a[i][j];
returnmax;
{inta[3][4]={{1,4,7,10},{2,5,8,11},{3,6,9,12}};
intmax;
max=fun(a);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 重点 30