2C语言上机练习题总结版Word文档格式.docx
- 文档编号:16895476
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:30
- 大小:49.34KB
2C语言上机练习题总结版Word文档格式.docx
《2C语言上机练习题总结版Word文档格式.docx》由会员分享,可在线阅读,更多相关《2C语言上机练习题总结版Word文档格式.docx(30页珍藏版)》请在冰豆网上搜索。
7*1=77*2=147*3=217*4=287*5=357*6=427*7=49
8*1=88*2=168*3=248*4=328*5=408*6=488*7=568*8=64
9*1=99*2=189*3=279*4=369*5=459*6=549*7=639*8=729*9=81
16.利用循环打印以下杨辉三角(要求打印7行):
1
11
121
1331
14641
15101051
1615201561
17.利用循环输出下列图形(无空行和空列):
*
***
*****
*******
18.不使用strcat函数,将两个字符串连接起来。
19.编写函数,求
的值。
n的值由键盘获得。
20.编写函数intfun(charstr[])并在主函数中调用它。
此函数的功能是判别字符串str是否为“回文”,若是,返回1,否则返回0(回文是指正反序相同的字符串,如“13531”、“madam”是回文,“1353”、“mrs”不是回文)。
21.用递归方法计算
22.用静态局部变量法计算
23.编写函数,求
,其中:
24.编写程序,计算组合数
m和n由键盘获得。
25.编写函数,求出n个a之积。
调用该函数,输入两个正整数n和a,求
之和。
26.编写程序,使用字符指针将字符数组s1中的字符串拷贝到字符数组s2中去。
27.使用“指向函数的指针”编写函数,求多项式
当
时的值。
28.编写函数,将直角坐标
转换为极坐标
转换公式为:
29.编写函数,使用指针参数将字符串ch2复制到字符串ch1的末尾,实现ch1与ch2的连接。
30.利用指针编写程序,将一个一维数组a[10]中的最大元素和首元素换位,最小元素和末元素换位。
数组元素由键盘获得。
31.试编程序,输入整数a和b,若
大于100,则输出
百位以上(包括百位)的数字,否则输出两数之和。
32.试编程序,求一个整数任意次方的最后三位数。
即求
的最后三位数,要求x,y从键盘输入,使用循环实现,不能使用数学库函数。
33.求
的个、十、百位上数字之和。
34.输出100以内每位数的积大于每位数的和的所有正整数。
35.通过循环按行优先顺序为一个5×
5的二维数组a赋1到25的自然数,然后输出该数组的左下半三角。
36.从键盘输入若干整数(个数小于30),其值在0至4的范围内,用-1作为输入结束的标志。
统计每个整数的个数。
37.定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数,然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。
38.数组a包括10个整数,把a中所有的后项除以前项之商取整后存入数组b,并按每行3个元素的格式输出数组b。
39.编写函数sstrcmp,实现两个字符串的比较(即实现与strcmp函数功能相同的函数)。
若两个字符串相等,返回值为0;
若不等,则返回两个对应字符的ASCII码值差值。
若前者大,应返回正值,若后者大,应返回负值。
1、#include<
stdio.h>
#include<
math.h>
main()
{
doublea,b,c,d,e,s;
scanf("
%lf%lf%lf"
&
a,&
b,&
d);
e=cos(d*3.1415926/180);
c=sqrt(a*a+b*b-2*a*b*e);
s=1.0*a*b*sin(d*3.145926/180)/2;
printf("
第三条边=%f,面积为=%f"
c,s);
}
2、#include<
charch;
ch=getchar();
if(ch>
=65&
&
ch<
=90)
ch=ch+32;
else
ch=ch-32;
%c"
ch);
3,#include<
intx,y;
if(ch==65)
printf("
没有前面的字母"
);
elseif(ch==90)
没有后面的字母"
{x=ch-1;
y=ch+1;
printf("
%c%c"
x,y);
4、#include<
intx;
Pleaseinput:
\n"
%d"
x);
if(x%3==0&
x%5==0&
x%7==0)
能同时被3、5、7整除。
elseif(x%3==0&
x%5==0)
能同时被3、5、7中的两个数整除,分别是3,5\n"
能同时被3、5、7中的两个数整除,分别是3,7\n"
elseif(x%5==0&
能同时被3、5、7中的两个数整除,分别是5,7\n"
x%5!
=0&
x%7!
=0)
只能被3、5、7中的一个数整除,是3\n"
elseif(x%3!
只能被3、5、7中的一个数整除,是5\n"
只能被3、5、7中的一个数整除,是7\n"
不能被3、5、7的任何一个数整除\n"
5、#include<
inta,b,c,i=0;
for(c=1;
c<
33;
c++)
for(b=c+1;
b<
49;
b++)
for(a=b+1;
a<
97;
a++)
if((1.0/(a*a)+1.0/(b*b))==1.0/(c*c))
{i++;
a=%d,b=%d,c=%d\n"
a,b,c);
有%d组\n"
i);
5.已知正整数A>
100,求满足共有多少组,并输出满足条件的组合。
(2)
for(a=1;
99;
for(b=1;
a-1;
for(c=1;
b-1;
if(a+b+c<
100&
(1.0/(a*a)+1.0/(b*b))==1.0/(c*c))
6,#include<
inti=0;
doubles=0,c=1;
while(1/c>
=1e-5)
{s=s+1/c;
i++;
c=c+i;
sum=%f\n"
s);
return0;
}或者#include<
{
s=s+1/c;
c=c+i;
c=c+1;
i++;
}
7、#include<
floata,x0,x1;
%f"
a);
x1=a/2;
do{
x0=x1;
x1=(x0+a/x0)/2;
}while(fabs(x1-x0)>
1e-5);
a=%f,squart(a)=%f\n"
a,x1);
8、#include<
inti,s1=0,s2=0;
for(i=1;
i<
100;
i++)
if(i%2==0)
s2=s2+i;
else
s1+=i;
s1=%d,s2=%d"
s1,s2);
9、#include<
inti,j,k;
=4;
{for(j=1;
j<
=5-i;
j++)
printf("
"
for(k=1;
k<
=i;
k++)
#"
10、#include<
intsu(intx)
inti=1;
doublek;
k=sqrt(x);
if(x>
{while(++i<
=k)
{if(x%i==0)
return0;
if(i>
k)
return1;
return2;
intb,i;
{
b=su(i);
if(b==1)
%d\n"
//判断一个数是否为素数
intmain()
intn,i;
n);
for(i=2;
=n-1;
if(n%i==0)break;
if(i>
=n)
%disprime\n"
n);
else
%disnotprime\n"
(3)
//找出100以内的素数
for(n=3;
n<
=100;
n++,n++)
for(i=2;
if(n%i==0)break;
%d\n"
11、#include<
inta,b,c,i;
for(i=100;
1000;
{a=i/100;
b=i/10%10;
c=i%10;
if(a*a*a+b*b*b+c*c*c==i)
//多重循环实现水仙花数
inti,j,k,a;
=9;
for(j=0;
for(k=0;
{
a=i*100+j*10+k;
if(i*i*i+j*j*j+k*k*k==a)
printf("
a);
}
12、#include<
inta=1,b=1,c,i;
=40;
if(i<
3)
1\n"
{c=a+b;
c);
a=b;
b=c;
//斐波那契数列
inta=1,b=1,i;
%-6d%-6d\n"
a,b);
for(i=2;
=20;
a=a+b;
b=a+b;
13、#include<
intf(intn)
x=n*n;
if(n<
4)
{if(n==x)
return1;
return0;
elseif(n<
10)
{if(n==(x%10))
{if(n==(x%100))
inti;
for(i=0;
if(f(i))
14、#include<
inta[100],i,j,n,t;
n;
scanf("
a[i]);
n-1;
for(j=1;
n-i;
if(a[j-1]>
a[j])
{t=a[j-1];
a[j-1]=a[j];
a[j]=t;
排序:
%d"
a[i]);
15、
(1)//乘法表
inti,j,x;
%d*%d=%-3d"
i,j,i*j);
for(j=i,x=1;
x<
x++)
{printf("
%2d*%d=%2d"
i,j,x*j);
if(x==i)
16、#include<
inti,j,a[7][7]={0};
7;
{a[i][0]=1;
for(j=1;
a[i][j]=a[i-1][j-1]+a[i-1][j];
{for(j=0;
%4d"
a[i][j]);
17、
(1)正三角形
for(j=i;
=2*i-1;
*"
intn=4,i,j,z;
=4-i;
for(z=1;
z<
=(2*i-1);
z++)
18、#include<
chars1[80],s2[80];
inti=0,j=0;
gets(s1);
gets(s2);
while(s1[i++]);
i=i-1;
while(s2[j])
{s1[i]=s2[j];
j++;
s1[i]='
\0'
;
%s\n"
s1);
19、#include<
doubles=0;
=n;
s=s+1.0/i;
%6.2f\n"
20、#include<
intfun(charstr[])
inti=0,n=0;
while(str[i++]);
n=i-1;
n/2;
if(str[i]!
=str[n-1-i])
if(i==n/2)
return1;
chars[30];
gets(s);
if(fun(s)==0)
不是回文"
是回文"
21、#include<
stdlib.h>
longf(intn)
longk;
0)
Error!
exit(0);
elseif(n==0||n==1)
k=1;
k=n*f(n-1);
returnk;
intn;
k=f(n);
%d!
=%d"
n,k);
22、#include<
doublef(intn)
staticintc;
inti,k=1;
c=n;
k=k*i;
intq;
q);
f(q);
f(q));
23、#include<
returns;
doubles;
s=f(50)+f(100)+f(150)+f(200);
s=%8.2lf"
24、#include<
longfun1(longn)
longk=1;
longfun2(longm,longn)
longc;
c=fun1(m)/(fun1(n)*fun1(m-n));
returnc;
longc,m,n;
Pleaseinputmandn:
%ld%ld"
m,&
c=fun2(m,n);
%ld"
25、
(1)//a+aa+aaa+aaaa
intn,i,a,t;
Pleaseinputnanda:
%d%d"
n,&
t=a;
s=s+a;
a=a*10;
a=a+t;
%6.2f"
doublef(intn,inta)
doubles=1;
s*=a;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 上机 练习题 总结