c语言经典案例Word下载.docx

上传人:b****4 文档编号:14003131 上传时间:2022-10-16 格式:DOCX 页数:11 大小:17.10KB
下载 相关 举报
c语言经典案例Word下载.docx_第1页
第1页 / 共11页
c语言经典案例Word下载.docx_第2页
第2页 / 共11页
c语言经典案例Word下载.docx_第3页
第3页 / 共11页
c语言经典案例Word下载.docx_第4页
第4页 / 共11页
c语言经典案例Word下载.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

c语言经典案例Word下载.docx

《c语言经典案例Word下载.docx》由会员分享,可在线阅读,更多相关《c语言经典案例Word下载.docx(11页珍藏版)》请在冰豆网上搜索。

c语言经典案例Word下载.docx

}

2、用选择法对10个整数排序。

intnum[10],n,i,j,t,k;

请输入十个整数:

"

for(n=0;

n<

10;

n++)scanf("

%d"

&

num[n]);

9;

{

k=i;

for(j=i+1;

j<

j++)

if(num[k]<

num[j])k=j;

if(k!

=i){t=num[i];

num[i]=num[k];

num[k]=t;

}

从大到小排序为:

n++)printf("

%d"

num[n]);

3、求一个3*3的整型二维数组对角线元素之和。

intnum[3][3],i,j;

输入二维数组:

3;

for(j=0;

scanf("

num[i][j]);

两对角线和分别为%d和%d\n"

num[0][0]+num[1][1]+num[2][2],num[0][2]+num[1][1]+num[2][0]);

5、将一个数组中的值按逆序重新存放。

stdlib.h>

time.h>

intnum[100],n,i,temp;

srand(time(0));

n=rand()%100+1;

生成数组长度为%d\n生成的数组:

n);

n;

i++){num[i]=rand()%100;

printf("

^%-3d"

num[i]);

\n数组逆序存放后排列为:

n/2;

i++){temp=num[i];

num[i]=num[n-1-i];

num[n-1-i]=temp;

i++)printf("

6、输出以下的杨辉三角形(要求输出10行)。

1

11

121

1331

︙︙︙︙

intnum[10][10],i,j;

if(j-1<

0||j==i)num[i][j]=1;

elsenum[i][j]=num[i-1][j-1]+num[i-1][j];

num[i][j]);

if(j==i)break;

7、输出“魔方阵”。

所谓魔方阵是指这样的方阵,它的每一行、每一列和对角线之和均相等。

例如,三阶魔方阵为816

357

492

intn,i,j,k;

输入奇数阶魔方阵的阶数:

n);

k=(5*n-1)/2;

for(i=0;

++i)

(k-i+j)%n*n+(k-i-j-1)%n+1);

9、有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。

如果该数不在数组中,则输出“无此数”。

intnum[15],n,t=0,left,right,middle,key;

数组为\n"

for(n=14;

n>

=0;

n--)t=num[n]=rand()%10+(t+1);

15;

^%-4d"

\n请输入要查找的数:

key);

left=0;

right=14;

while(left<

=right)

middle=(left+right)/2;

if(key==num[middle]){t=-1;

break;

if(key<

num[middle])left=middle+1;

elseright=middle-1;

if(t==-1)printf("

该数是数组中第%d个元素的值\n"

middle+1);

elseprintf("

无此数\n"

11、输出以下图案:

*****

*****

charasterisk[]="

*****"

space[]="

"

;

inta,b;

for(a=0;

a<

5;

a++)

for(b=0;

b<

a;

b++)printf("

%s"

space);

%s\n"

asterisk);

12、有一行电文,已按下面规律译成密码:

第1个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。

非字母字符不变。

要求编程序将密码译回原文,并输出密码和原文。

ctype.h>

charch,code[100];

intn=0;

请输入密码:

while((ch=getchar())!

='

\n'

if(n==0)printf("

密码\n"

%c"

ch);

if(isupper(ch))code[n++]=(26-ch+65+64);

if(islower(ch))code[n++]=(26-ch+97+96);

if(!

isalpha(ch))code[n++]=ch;

code[n]='

\0'

\n原文\n%s\n"

code);

13、编一个程序,将两个字符串连接超来,不要用strcat函数。

string.h>

chara[2][100];

puts("

输入字符串:

gets(a[0]);

gets(a[1]);

inti=0;

while(a[0][i]!

)i++;

strcpy(&

a[0][i],a[1]);

连接后字符串:

puts(a[0]);

14、编一个程序,将两个字符串s1和s2比较,若s1>

s2,输出一个正数;

若s1=s2,输出0;

若s1<

s2,输出一个负数。

不要用strcpy函数。

两个字符串用gets函数读入。

输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCII码的差值。

for(inti=0,n=0;

a[0][i]!

&

a[1][i]!

if(a[0][i]!

=a[1][i]){n=a[0][i]-a[1][i];

%d\n"

15、编写一个程序,将字符数组s2中的全部字符复制到字符数组s1中。

不用strcpy函数。

复制时,‘\0’后面的字符不复制。

a[0][0]='

strcat(a[0],a[1]);

复制后字符串:

从1累加到100

#include<

main()

inti,sum=0;

for(i=1;

sum=sum+i;

sum=%d\n"

sum);

}

求1!

+2!

+…+n!

:

#include<

Voidmain()

{doublefac,sum=0;

Inti,n;

fac=1;

i=1;

scanf(“%d”,&

while(i<

=n)

{fac=fac*I;

i++;

sum=sum+fac;

printf(“%lf”,sum);

求1-3+5-7+。

+101的值

math.h>

{inta,I,j,sum=0;

j=2;

while(1<

=101)

{sum=sum+i*power(-1,j);

i=i+2;

j++;

printf(“%d\n”,sum);

求1*2*3*…*100

{inti,sum;

i=1,sum=1;

101)

sum=sum*i;

 

水仙花数:

main(){ 

int 

a,b,c,num;

for(a=1;

a++){ 

for(b=0;

b++){ 

for(c=0;

c<

c++){ 

if(a*100+b*10+c==(num=a*a*a+b*b*b+c*c*c)) 

num);

从1到1000的素数:

#include"

stdio.h"

{intf(intn);

inti,k=0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1