试验四Word文档格式.docx
《试验四Word文档格式.docx》由会员分享,可在线阅读,更多相关《试验四Word文档格式.docx(19页珍藏版)》请在冰点文库上搜索。
%d"
&
repeat);
for(ri=1;
ri<
=repeat;
ri++){
n);
/*---------*/
printf("
%0.4f\n"
s);
}
2求各位数字的立方和等于它本身的数
输入2个正整数m和n(1<
=m,n<
=1000),输出m到n之间的所有满足各位数字的立方和
等于它本身的数。
输出语句:
%d\n"
i);
100400(m=100,n=400)
1100(m=1,n=100)
153(1*1*1+5*5*5+3*3*3=153)
370(3*3*3+7*7*7=370)
371(3*3*3+7*7*7+1*1*1=371)
1
inti,digit,m,n,number,sum;
%d%d"
&
m,&
3统计素数并求和
=500),统计并输出m和n之间的素数的个数以及这些素
数的和(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。
3(repeat=3)
110(m=1,n=10)
2035(m=20,n=35)
1416(m=14,n=16)
count=4,sum=17(1到10之间有4个素数:
2,3,5,7)
count=3,sum=83(20到35之间有3个素数:
23,29,31)
count=0,sum=0(14到16之间没有素数)
math.h"
intcount,digit,i,j,k,m,n,sum;
count=%d,sum=%d\n"
count,sum);
4统计单词
输入一行字符,统计其中单词的个数。
各单词之间用空格分隔,空格数可以是多个。
输入
Reoldbuildingroom123
Programmingisfun
输出
4
3
#include<
stdio.h>
intri,repeat;
intcount,word;
charc;
getchar();
ri<
ri++){
c=getchar();
count);
5输出一个整数的各位数字
输入一个整数,从高位开始逐位输出它的各位数字。
%-2d"
digit);
123456
-600
8
123456
600
intdigit;
longin,temp,pow;
%ld"
in);
\n"
);
6简单计算器(选作)
程序模拟简单运算器的工作:
输入一个算式(没有空格),遇等号"
="
说明输入结束,输出结果。
假设计算器只能进行加减乘除运算,运算数和结果都是整数,4种运算符的优先级相同,按
从左到右的顺序计算。
15+2/3=
1+2*10-10/2=
5
10
intop1,op2,res;
charoperator;
op1);
operator=getchar();
res);
实验数组
1求平均值
输入一个正整数n(1<
n<
=10),再输入n个整数,输出平均值(保留2位小数)。
312-6
5122540
aver=-1.00
aver=4.60
inti,n,sum;
floataver;
inta[10];
for(i=0;
i<
n;
i++)
a[i]);
aver=%.2f\n"
aver);
2求最大值及其下标
=10),再输入n个整数,输出最大值极其下标(设最大值惟一,下
标从0开始)。
3164
31081
512540
max=6,index=1(最大值6的下标是1)
max=10,index=0(最大值10的下标是0)
max=5,index=2(最大值5的下标是2)
inti,index,n;
max=%d,index=%d\n"
a[index],index);
3逆序输出
=10),再输入n个整数,按逆序输出这些数。
410812
21810
04521
inti,n,temp;
%d"
a[i]);
4交换最小值和最大值
=10),再输入n个整数,将最小值与第一个数交换,最大值与最后
一个数交换,然后输出交换后的n个数。
543512
41567
554321
13245
1567
14325
inti,index,n,t;
5排序
=10),再输入n个整数,将它们从大到小排序后输出。
。
45176
3123
7651
321
54321
inti,index,k,n,temp;
6矩阵运算
读入1个正整数n(1≤n≤6),再读入n阶方阵a,计算该矩阵除副对角线、最后一列和
最后一行以外的所有元素之和.(副对角线为从矩阵的右上角至左下角的连线)
1(repeat=1)
4(n=4)
2341
5611
7181
1111
sum=35(2+3+4+5+6+7+8=35)
{intri,repeat;
inta[6][6],i,j,n,sum;
for(i=0;
i<
i++)
for(j=0;
j<
j++)
a[i][j]);
sum=%d\n"
sum);
7加法口诀表
输入1个正整数n(1≤n≤10),输出一张20以内的加法口诀表.加数与被加数都不大于
n,分列第一行和第一列.(将加数、被加数、和放入一个二维数组中,再输出该数组)
3(n=3)
输出:
+123
12
234
3456
inti,j,n,a[10][10];
for(i=0;
=n;
i++){
for(j=0;
j<
j++)
if(i==0&
&
j==0)printf("
%-4c"
'
+'
elseif(i==0||j<
=i)printf("
%-4d"
a[i][j]);
8判断上三角矩阵
输入1个正整数n(1≤n≤6)和n阶方阵a中的元素,如果a是上三角矩阵,输出"
YES"
否
则,输出"
NO"
(上三角矩阵,即主对角线以下的元素都为0,主对角线为从矩阵的左上角至
右下角的连线)
3123045006(n=3)
210-82(n=2)
YES
NO
inta[6][6],flag,i,j,n;
for(j=0;
if(flag)printf("
YES\n"
elseprintf("
NO\n"
9求矩阵每行元素之和
输入2个正整数m和n(1≤m,n≤6),然后输入该m行n列矩阵a中的元素,分别求
出各行元素之和,并存入一维数组row中,再输出row.
32(m=3,n=2)
63
1-8
312
sumofrow0is9
sumofrow1is-7
sumofrow2is15
intflag,i,j,m,n,sum;
inta[6][6],row[6];
m,&
m;
sumofrow%dis%d\n"
i,row[i]);
10找鞍点(选作)
输入1个正整数n(1≤n≤6)和n阶方阵a中的元素,如果找到a的鞍点(鞍点的元素值
在该行上最大,在该列上最小),就输出它的下标,否则,输出"
(设a最多有1个鞍点)。
41741483616120789(n=4)
21741(n=2)
a[2][1]=6
intflag,i,j,k,row,col,n,a[6][6];
j++)
if(flag)
a[%d][%d]=%d\n"
row,col,a[row][col]);
else