c语言程序详解110Word文档格式.doc
- 文档编号:14617562
- 上传时间:2022-10-23
- 格式:DOC
- 页数:26
- 大小:172.50KB
c语言程序详解110Word文档格式.doc
《c语言程序详解110Word文档格式.doc》由会员分享,可在线阅读,更多相关《c语言程序详解110Word文档格式.doc(26页珍藏版)》请在冰豆网上搜索。
#defineM3
#defineN4
main()
{intmax,i,j,r,c;
inta[M][N]={{123,94,-10,218},{3,9,10,-83},{45,16,44,-99}};
max=a[0][0];
for(i=0;
M;
for(j=0;
j<
N;
j++)
if(a[i][j]>
max)
{max=a[i][j];
r=i;
c=j;
printf("
max=%d,row=%d,colum=%d\n"
max,r,c);
求一个3×
3矩阵主对角线元素之和。
voidmain()
{
inta[3][3]={1,2,3,4,5,6,7,8,9},sum=0,i,j;
for(i=0;
3;
for(j=0;
if(i==j)
sum+=a[i][j];
printf("
%d"
sum);
/*建立一个通讯录结构体,其成员变量主要有:
序号,姓名,电话。
根据建好的结构体设计有3个人员的通讯录,对其赋值,并将3人的通讯录按行输出。
*/
#include"
stdio.h"
structmember
charnum[5];
charname[10];
inttel;
};
voidmain()
{ inti;
structmembermem[3]={{"
001"
zhangsan"
139},{"
002"
lisi"
003"
wangwu"
139}};
printf("
Number Nametel\n"
for(i=0;
printf("
%5s%10s%5d\n"
mem[i].num,mem[i].name,mem[i].tel);
/*2、编写程序,从键盘读入一个字符串,
用字符数组保存,然后分别用strlen()、
sizeof()计算其长度,输出结果并分析。
string.h>
{chars[20];
gets(s);
puts(s);
%d,%d\n"
sizeof(s),strlen(s));
程序中头文件type1.h的内容是:
#defineN5
#defineM1N*3
程序如下:
#include"
type1.h"
#defineM2N*2
main()
{inti;
i=M1+M2;
%d\n"
i);
程序编译运行后的输出结果是(c)
A)10B)20C)25D)30
1、所谓“同构数”是指这样一个数,它出现在它的平方数的右侧,例如5的平方是25,25的平方是625,故5和25都是同构数,求[1,1000]之间所有同构数的个数和总和。
7,1114
voidmain(){
inti,a,n=0,sum=0;
1000;
{a=i*i;
if(i<
10&
&
a%10==i)
{n++;
sum=sum+i;
elseif(i<
100&
a%100==i)
elseif(a%1000==i)
}printf("
%d,%d"
n,sum);
方法二:
inti,a,sum=0,n=0;
if(a%10==i||a%100==i||a%1000==i)
n++;
}}
%d%d"
sum,n);
猴子第一天摘下若干桃子,当即吃了一半,还不过瘾又多吃了一个。
第二天早上又将剩下的桃子吃了一半,还是不过瘾,有多吃一个。
以后每天都吃前一天剩下的一半再加一个。
到第10天再吃剩下一个了。
求猴子第一天摘了多少桃子?
1534
inti,x=1;
for(i=9;
i>
0;
i--)
x=(x+1)*2;
printf("
第一天共摘了%d只桃子\n"
intpeach(intn)
{intc;
if(n==10)c=1;
elsec=2*(peach(n+1)+1);
returnc;
{intsum=0;
sum=peach
(1);
}2、一个素数(设为p)依次从最高位去掉一位,二位,三位,……,若得到的各数仍都是素数(注:
1不是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。
例如,617,17,7都是素数,因此617是逆向超级素数,尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。
试求[100,999]之内的所有逆向超级素数的个数。
39
math.h>
intprime(intm)
{ inti,k,f=1;
if(m==1)
f=0;
k=(int)sqrt(m);
for(i=2;
i<
=k;
i++)
if(m%i==0)
f=0;
returnf;
}
intp,i,j,k,sum=0;
for(p=100;
p<
=999;
p++)
{i=p/100;
j=(p/10)%10;
k=p%10;
if(prime(p)&
prime(j*10+k)&
prime(k)&
k!
=0&
j!
=0)
{printf("
%d"
p);
sum++;
}
/*
程序:
冒泡法排序函数的定义。
voidBubble(int*pa,intn);
//冒泡法排序函数声明
intmain(){
inta[10],n,i;
do
{
Inputn(1<
=n<
=10):
\n"
scanf("
n);
}while(n<
1||n>
10);
Input%delements:
n);
for(i=0;
n;
i++)
a[i]);
Theoriginalarrayis:
%5d"
a[i]);
Bubble(a,n);
//冒泡排序函数调用
printf("
Thesortedarrayis:
i++)
return0;
voidBubble(int*pa,intn)
{
{inti,j,t;
n-1;
for(j=n-1;
j>
i;
j--)
if(pa[j]<
pa[j-1])
{t=pa[j-1];
pa[j-1]=pa[j];
pa[j]=t;
}德国数学家哥德巴赫曾猜测:
任何大于6的偶数都可以分解成两个素数的和。
但有些偶数可以分解成多种素数对的和,如:
10=3+7,10=5+5,即10可以分解成两种不同的素数对。
试求6744可以分解成多少种不同的素数对(注:
A+B与B+A认为是相同素数对) 144
}
inta,b,n=0;
for(a=1;
a<
6744/2;
a=a+2)
if(prime(a))
{b=6744-a;
if(prime(b))
}
printf("
}
程序6.6求最大公约数函数的定义与调用。
第4章的程序4.9是求最大公约数程序的主函数形式,
现在将其求最大公约数部分独立定义为函数gcd,并在主函数中调用
intgcd(intdividend,intdivider);
//求最大公约数函数声明
intmain()
{
intm,n;
do
Inputm,n:
%d%d"
m,&
}while(m<
=0||n<
=0);
hcd:
%d\n"
gcd(m,n));
//求最大公约数函数调用
intgcd(intdividend,intdivider)//求最大公约数函数定义
{ intremainder;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 程序 详解 110