日历

2008 7.9 Wed
  12345
6789101112
13141516171819
20212223242526
2728293031  
«» 2008 - 7 «»

文章搜索

日志文章

2007年08月25日 22:40:27

C语言常见算法

前些日子有朋友应聘java程序员,公司要求他三天会用PHP,24个人选两个,不会走人.虽然没怎么接触PHP,还好很快掌握,应聘通过.朋友说这都归功于C语言学得可以,C语言学好了,哪门语言掌握起来也都快.真神,今天我也开始复习下C语言咯.下面是C语言中常见的几种算法.
【1】求最大值与最小值.
#include <stdio.h>
void main()
{
int num[5],max,min,i;
printf("请输入5个数字:")
for(i=0;i<5;i++)
scanf("%d",&num)
max=num[0];
min=num[0];
for(i=1;i<5;i++)
{
if(max<num)
max=num;
if(min>num)
min=num;
}
printf("\n最大值为:%d",max);
printf("\n最小值为:%d",min);
}
【2】查找:
#include <stdio.h>
#define N 10
void main()
{
int i;
int num[N],search;
printf("请输入%d个数组元素:\n",N);
for(i=0;i<N;i++)
{
scanf("%d",&num);
}
printf("\n请输入您要查找的元素:");
scanf("%d",&search);
for(i=0;i<N;i++)
{
if(num==search)
{
break;
}
}
if(i<N)
printf("\n在数组的第%d个位置找到了数字%d\n",search);
else
printf("没有找到");
}
【3】排序:
#include <stdio.h>
#define N 5
void main()
{
int i,j;
int grade[N],temp;
printf("\n输入%d个数字:\n",N);
for(i=0;i<N;i++)
{
scanf("%d",&grade);
}
for(i=0;i<N;i++)
{
for(j=0;j<N-i-1;j++)
{
if(grade[j]<grade[j+1])
{
temp=grade[j+1];
grade[j+1]=grade[j];
grade[j]=temp;
}
}
}
printf("\n排序后的成绩为:\n");
for(i=0;i<N;i++)
{
printf("%d",grade);
}
}
【4】插入:
#include <stdio.h>
#define N 5
void main()
{
int i,j;
int num[N+1]={23,45,60,67,88},in;
printf("\n插入前的数组元素:\n");
for(i=0;i<N;i++)
{
printf("%d",num);
}
printf("请输入一个要插入的数:");
scanf("%d",&in);
for(i=0;i<N;i++)
{
if(num>in)//找到位置并跳出
break;
}
for(j=N;j>i;j--)//为要插入的数字留出位置
{
nm[j]=num[j-1];
}
num=in;//将来插入的数保存在该位置
printf("\n插入后的数组元素:\n");
for(i=0;i<N+1;i++)
{
printf("%d",num);
}
printf("\n");
}
OK,完成.为以后打好基础,一起加油哦.

类别: C |  评论(0) |  浏览(1985) |  收藏
发表评论