当前位置: 代码迷 >> C语言 >> [求助] 编写求分段函数的程序
  详细解决方案

[求助] 编写求分段函数的程序

热度:506   发布时间:2007-01-11 22:25:57.0
[求助] 编写求分段函数的程序
1.会编写:求分段函数的程序、数据排序程序、判断素数程序。
2.计算:s=1+1/1+1/2+…… +1/n ,其中n由键盘输入。
3.用台劳级数求e的近似值,直到最后一项小于10-6
e=1+1/1!+1/2!+1/3!+ ……
4. 打印10~1000之间满足下列条件的所有数: 正序读和反序读都相同,例如:55、232等。
5.从键盘任意输入一个大于0且小于1000的整数,然后输出此整数的所有整数因子。
例如:输入12,输出1,2,3,4,6,12。
6.编写一个函数,将字符串中的元音字母输出。例如字符串为“boy and girl”, 则输出为: oai
7.任意输入100个整数,分别统计其中的正数、负数和零的个数。
8.编写一个函数:完成判断方阵a[N][N]是否关于主对角线对称(相等),若对称则返回1,否则返回0。
9.输入10个学生(包括姓名和成绩)的信息,找出成绩最高的,然后输出该学生的姓名和成绩。
10.输入10个学生(包括姓名、计算机、英语)的信息,找出二门课的平均成绩最高的学生,然后输出该学生的姓名和成绩。
搜索更多相关的解决方案: 函数  素数  分段  编写  

----------------解决方案--------------------------------------------------------
谢谢,各位帮个忙
----------------解决方案--------------------------------------------------------
  这么多题啊
----------------解决方案--------------------------------------------------------
谢谢,各位帮个忙。做一道题也行,
----------------解决方案--------------------------------------------------------
//数据排序的程序

#include<stdio.h>
void main()
{
int i,j,min,temp,a[11];
for(i=1;i<=10;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
}
printf("\n");
for(i=1;i<=9;i++)
{
min=i;
for(j=i+1;j<=10;j++)
if(a[min]>a[j])min=j;
temp=a[i];
a[i]=a[min];
a[min]=temp;
}
for(i=1;i<=10;i++)
printf("%5d",a[i]);
printf("\n");
}

这是一个用选择排序法来对数据进行排序的小程序.

----------------解决方案--------------------------------------------------------
//判断素数的小程序:

#include<stdio.h>
#include<math.h>
void main()
{
int n,i,k;
printf("Please input a number:");
scanf("%d",&n);
k=sqrt(n);
for(i=2;i<=k;i++)
if(n%i==0)
break;
if(i>k)
printf("%d is a prime number!\n",n);
else
printf("%d is not a prime number!\n",n);
}

----------------解决方案--------------------------------------------------------

5.从键盘任意输入一个大于0且小于1000的整数,然后输出此整数的所有整数因子。
例如:输入12,输出1,2,3,4,6,12。 "这个是不是有误啊!12好象不是题目中所说的结果哦!"


#include <stdio.h>
void main()
{
int a,b,s;
for(a=2;a<1000;a++)
{
s=0;
for(b=1;b<a;b++)
if((a%b)==0)
s=s+b;
if(s==a)
{
printf("%d,its factors are:", a);
for(b=1;b<a;b++)
if(a%b==0)
printf("%d",b);
printf("\n");
}
}


}

这是寡人的看法.


----------------解决方案--------------------------------------------------------

7.任意输入100个整数,分别统计其中的正数、负数和零的个数。


#include <stdio.h>
#define N 101
void main()
{
int a[N],i,m=0,n=0,z=0;
printf("请输入100个整数(每输完一个按一次回车):\n");
for(i=1;i<101;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
}
for(i=1;i<101;i++)
{
if(a[i]>0)
n++; /*统计正数的个数*/
if(a[i]==0)
z++; /*统计零的个数*/
if(a[i]<0)
m++; /*统计负数的个数*/
}
printf("\n正数总共有%d个\n",n);
printf("零总共有%d个\n",z);
printf("负数总共有%d个\n",m);
}


[此贴子已经被作者于2007-1-12 13:43:07编辑过]


----------------解决方案--------------------------------------------------------
哎呀  这么简单,可以自己做嘛!是不是?呵呵~~~~~~~~~~~~~~~~~~~~~~~~~
----------------解决方案--------------------------------------------------------
2.计算:s=1+1/1+1/2+…… +1/n ,其中n由键盘输入。


main()
{
int n,i;
float s=0.0;
scanf("%d",&n);
if(n==0)printf("error!\n");
else
{
for(i=1;i<=n;i++)
{s+=(float)(1.0/i);}
printf("result is:%f\n",s);
}
getch();
}
----------------解决方案--------------------------------------------------------
  相关解决方案