c语言程序设计的几个题,求三角形形状等,麻烦会的帮下忙,急急急!!!

数组的:
1.某数列前两项为2、3,其后每项为其前两项之积,求此数列的前10个数。(用数组完成)
2.用起泡法对任意输入的10个整数排序(由小到大)
3.输入一行字符串,统计该字符串中字符对”ab”的个数。
选择程序设计:
1.输入3个实数,编程判断能否以它们为边长构成三角形,若能,再说明是何种三角形
(等边三角形、等腰三角形、直角三角形或一般三角形)
2.企业发放的奖金根据利润提成。
利润(I)低于或等于10万元时,奖金可提10%;
利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;
20万到40万之间时,高于20万元的部分,可提成5%;
40万到60万之间时高于40万元的部分,可提成3%;
60万到100万之间时,高于60万元的部分,可提成1.5%;
高于100万元时,超过100万元的部分按1%提成。
从键盘输入当月利润i,求应发放奖金总数?
循环程序设计:
1.用“碾转相除法”来求出两个正整数的最大公约数。
提示:求最大公约数的算法如下:
(1)将两数中大的那个放在m中,小的放在n中
(2)求出m被n除后的余数r
(3)若余数为0则执行步骤(7);否则执行步骤(4)
(4)把除数作为新的被除数;把余数作为新的除数
(5)求出新的余数r
(6)重复步骤(3)到(5)
(7)输出n,n即为最大公约数。
2.求3~150之间的所有素数之和。

1,
#include <stdio.h>
#define N 20

int main(void)
{
long a[N] = {0};
int i = 0;

a[0] = 2;
a[1] = 3;

for (i = 2; i < 10; i++)
{
a[i] = a[i-2] * a[i-1];
}

printf("符合条件的序列前十项为:\n");
printf("%u, %u, ", a[0], a[1]);
for (i = 2; i < 10; i++)
{
printf("%u, ", a[i]);
}
printf("\n");

return 0;
}
2,
#include <stdio.h>

void bubble_sort(int array[10])
{
int tmp = 0;
int i = 0, j = 0;

for (i = 9; i >= 0; i--)
{
for (j = 0; j < i; j++)
{
if (array[j] > array[j+1])
{
tmp = array[j];
array[j] = array[j+1];
array[j+1] = tmp;
}
}
}
}

int main(void)
{
int a[10] = {0};
int i = 0, j = 0;

printf("请输入10个整数:\n");
for (i = 0; i < 10; i++)
{
scanf("%d", &a[i]);
}
bubble_sort(a);
for (j = 0; j < 10; j++)
{
printf("%d, ", a[j]);
}
printf("\n");

return 0;
}
3,
#include <stdio.h>
#include <string.h>
#define STR_LEN 128
int main(void)
{
int i = 0;
int count = 0;
char str[STR_LEN] = {0};
char ToBeSearch[3] = "ab";
int StrLen = 0;

printf("请输入一个字符串:\n");
gets(str);
StrLen = strlen(str);
while (i < StrLen)
{
if (str[i] == ToBeSearch[0] && str[i+1] == ToBeSearch[1])
{
count++;
i += 2;
}
else
{
i++;
}
}
printf("字符串 \"%s\" 中有 %d 个 \"%s\"\n", str, count, ToBeSearch);
return 0;
}

1,
#include <stdio.h>
#include <math.h>

int main(void)
{
float x, y, z;

printf("请输入三个实数:\n");
scanf("%f %f %f", &x, &y, &z);
if (x > 0 && y > 0 && z > 0)
{
if ((x+y > z && x+z > y && y+z > x)
&& (fabs(x-y) < z && fabs(x-z) < y && fabs(y-z) < x))
{
printf("以%f, %f, %f为三条边可以构成三角形,", x, y, z);
if (x==y && x==z)
{
printf("且是等边三角形\n");
}
else if (x==y || x==z || y==z)
{
printf("且是等腰三角形\n");
}
else if ((x*x + y*y == z*z)
|| (x*x == y*y + z*z)
|| (x*x + z*z == y*y))
{
printf("且是直角三角形\n");
}
else
{
printf("且是一般的三角形\n");
}
}
else
{
printf("以%f, %f, %f为三条边时不可以构成三角形!\n", x, y, z);
}
}
else
{
printf("以%f, %f, %f为三条边时不可以构成三角形!\n", x, y, z);
}
return 0;
}

都是简单的,还一两题你自己来,免得你也没进步!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-25
1,
main(){
int c,i;
int a[10];a[0]=2;a[1]=3;
for(i=2;i<10;i++)
a[i]=a[i-1]*a[i-2];
for(i=0;i<10;i++)
printf("%d",a[i]);}
2,
main()
{
int a[10];
int i,j,k;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(j=0;j<9;j++)
for(i=0;i<(9-j);i++)
if(a[i]>a[i+1])
{a[i]=k;
k=a[i+1];
a[i+1]=k;}
for(i=0;i<10;i++)
printf("%d",a[i]);
}

3,
main()
{
char str[100],s[2]="ab";int i,k=0;
gets(str);
for(i=0;str[i]!='\0';i++)
{if(str[i]=='a'&&str[i+1]=='b')
k++;
}
printf("%d",k);
}

4,
main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a+b>c)
{if(a=b=c)printf("该三角形是等边三角形");
else if(a=b!=c) printf("等腰三角形");
else if(a*a=b*b+c*c) printf("直角三角线");

else printf("普通三角形");
}
else printf("不是三角形");

}

5(素数)
main()
{
int i,m,sum=0;
for(m=3;m<=150;m++)
{
for(i=2;i<m;i++)
if(m%i==0) break;
if(i==m)
sum=sum+m;
}
printf("%d",sum);
}
其他的自己试试做,不会再加我;
QQ:980515024(非诚勿扰)本回答被提问者采纳
第2个回答  2010-06-25
真是服了你。这个太简单。懒得教你。
第3个回答  2010-06-25
烧了吧你。。。
相似回答