C语言程序设计100题真题题库题型分类总结(方便打印)

时间:2024.5.14

学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写了函数fun,它的功能是:把分数最高的学生数据放在b所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。

int fun(STREC *a,STREC *b)

{int i,max=a[0].s,n=0;

for(i=1;i<N;i++)

if(max<a[i].s)max=a[i].s;

for(i=0;i<N;i++)

if(max==a[i].s)b[n++]=a[i];

return n;}学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写了函数fun,它的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。

int fun(STREC *a,STREC *b,int l,int h)

{int i,j=0;

for(i=0;i<N;i++)

if((a[i].s>=1&&a[i].s<=h)

b[j++]=a[i];

return j; 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写了函数fun,它的功能是:把分数最低的学生数据放在b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生的人数。

Int fun(STREC *a,STREC *b)

{int i,j=0,min=a[0].s;

for(i=0;i<N;i++)

{ if(min>a[i].s){

j=0;

b[j++]=a[i];min=a[i].s;

}

else if(min==a[i].s)

b[j++]=a[i];

}return j; m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人数作为函数值返回,将低于平均分的分数放在below所指的数组中。

int fun(int score[],int m,int below[])

{float av=0.0;

int i,j=0;

for(i=0;i<m;i++)

av+=score[i];

av/=m;

for(i=0;i<m;i++)

if(av>score[i])

below[j++]=score[i];

return j;  已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a 结构体数组中,轻便鞋函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)

fun(STU a[],STU *s)

{

int i,min=a[0],s,j=0;

for(i=1;i<N;i++)

if(min>a[i].s){

j=i;

min=a[i].s;

}

*s=a[j];  某学生的记录由学号、8门课程和平均分组成,学号和8门课程成绩已在主函数中给出。请编写函数fun,它的功能是;求出该学生的平均分放在记录的ave成员中。

void fun(STREC *a)

{  int i;

for(i=0;i<N;i++)

  a->ave=a->ave+a->s[i];

a->ave/=N}  学生的记录由学号和学生成家组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是;按分数的高低排列学生的记录,高分在前。

  int fun (STREC a[])

   {STREC  tmp;

   int i,j;

   for (i=0;i<N; i++)

     for (j=0; j<N;j++)

   if (a [i]. s<a[j]. s )

   {  tmp =a [i];

   a [i]=a [j];

   a[j] =tmp;

   }}学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,低于平均分的学生人数通过形参n传回。平均分通过函数值返回。

  double fun (STREC *a, STREC *b, int *n)

   {int  i;

   double ave=0. 0;

   *n=0;

for (i=0; i<N; i++)

   ave =ave=a[ i ]. S;

ave /=N;

for( i=0 ; i<N  : i++)

  if (a [i]. s<ave)

{ b[*n]=a[ i ];

   (*n)++;

}

return ave;

}  N名学生的成绩已在主函数中放入一个带头结点的链表结构中,h指向链表的头结点。请编写函数fun,它的功能是:找出学生的最高分,由函数值返回。

double fun ( STREC *h )

   {                           

   double max=h ->s ;

   STREC *p ;

   p=h->next ;

   while (p)

   {  if (p-s>max)

   max=p->s ;

   p=p->nest;

   }

   return max ; 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于等于平均分数的学生数据放在b所指的数组中,并把人数通过形参n传回。

double fun(STREC *a,STREC *b,int *n)

{

double t=0;

int i;

*n=0;

for(i=0;i<N;i++)

t=t+a[i].s;

t=t/N;

for(i=0;i<N;i++)

if(a[i].s>t)b[(*n)++]=a[i];

return t;

}} N名学生的成绩已在主函数中放入一个带头结点的链表结构中,h指向链表的头结点。请编写函数fun,它的功能是:求出平均分,有函数值返回。

double fun(STREC *h)

{

STREC *p=h->next;

double av=0.0;

int n=o;

while(p!=NULL)

{av=av+p->s;

p=p->next;n++;}

av/=n;return av;

}已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写给函数fun,函数的功能是:找出成绩最高的学生的记录,通过形参指针传回主函数(规定只有一个最高分),已给出函数的首部,请完成函数。

fun(STU a[],STU *s)

 { int  i, max = a[0]. s, j=0;

 for (i=1; i<N;i++)

 { if (max<a [i].s)  {

 j=i;max =a[i].s;           }*s=a[j];

 }  学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写了函数fun,它的功能是:函数返回指定学号的学生数据,指定的学生号在主函数中输入,若没有找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是strcmp)。

STREC fun(STREC*a,char *b)

{STREC c;

Int i;

c.num[0]=’\0’;

c.s=-1;

for(i=0;i<N;i++)

if(strcmp(a[i].num,b)==0)

{strcpy(c.num,a[i].num);

c.s=a[i].s;break;}

return c;

}    请编写函数fun,它的功能是:计算n门课程的平均分,计算结果作为函数返回。

float fun(float *a,int n)

{

int i;

float ave=0.0;

for(i=0;i<n;i++)

ave=ave+a[i];

ave=ave/n;

return ave;请编写一个fun函数,它的功能是:求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。

void fun(int m,int *a,int *n)

{

int i;

*n=0;

for(i=7;i<=m;i++)

 if((i%7==0)||(i%11==0))

a[(*n)++]=i;

}请编写函数fun,它的功能是:求小于形参n同时能被3和7整除的所有自然数之和的平方根,并作函数的返回值。

double fun(int n)

{

double sum=0.0;

int i;

for(i=21;i<=n;i++)

if((i%3= =0)&&(i%7= =0))sum

+=i;

return sqrt(sum);

}

void fun(int*w, int p, int n)

{

int i,j=0,b[N];

for(i=p+1;i<n;i++)b[j++]=w[i];

for(i=0);i<=p;i++)

b[j++]=w[i];

for(i=0;i<n;i++)

w[i]=b[i];

}请编写函数fun,函数的功能是:求出1到1000之间能被7或11整除,但不能同时被7和11整除的所有整数并将它们放在a所指的数组中,通过n返回这些数的个数。

#include <stdio. h>

viod fun (int *a,int *n)

{int i;

*n=0;

for(i=7;i<1000;i++)

if(((i%7)= =0││(i%11)= =0

&&(i%77)!=0) a[(*n)++]=i;

}请编写函数fun,它的功能是:计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。

double fun(int n)

{int i;

double sum=0.0;

for(i=1;i<n;i++)

 if(i%5= =0||i%9==0)

 sum+=1.0/i;

return sum;

}编写一个函数fun,它的功能是:计算并输出3到n之间(含3和n)所有素数平方根之和。

  double fun (int n)

   { int i, j=0;

   double s=0;

   for (i=3;i<=n; i++){

   for (j=2; j<i;j++)

     if ( i %j==0)break;

   if (j==i)s =s+sqrt ( i );} return s; }  请编写函数fun,函数的功能是,删去一维数组中所有相同的数,使之只剩一个。数组中的数已按从小到大的顺序排序,函数返回删除后数组中数据的个数。

int fun ( int a [ ] , int n )

 { int i , j =1 , k=a [0];

  for ( i = 1; i<n ; i ++)

   if  ( k!=a [ i ]) {

   a [j++] =a [ i ] ;

   k = a [ i ] ; }

   a [ j ] = 0;return j ; }请编写一个函数fun,它的功能是:计算并输出下列多项式的值:……例如,在主函数中从键盘给n输入8后,输出为s=0.662872。注意:要求n的值大于1但不大于10.

double fun (int n)

 {int i ;

  double sum=0.0;

if (n>1&&n<=100)

 { for ( i=1 ; i<=n; i++)

sum +=1. 0/(2*i - 1)- 1. 0/(2* i);}

return sum;}

请编写一个函数fun,将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。

void fun(char *ss)

{

int i;

for(i=1;i<strlen(ss);i+=2)

{if(ss[i]>=’a’&&ss[i]<=’z’)ss[i]-=32;}}  规定输入的字符串中只包含字母和*号。请编写函数fun ,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。

void fun (char *a)

 {int j=0;char *p=a;

 while (*p=='*')p++;

 while (*p){

 a[j++]=*p;p++;}

 a[j]=0; }请编写函数fun,函数的功能是:将所有大于1小于整数 m的非素数存入xx所知数组中,非素数的个数通过k传回。

  void fun (int m, int *k, int xx[])

   { int i , cnt=0;

   for (i=0; i<m;i++)

   if (isP(i)) xx [cnt++]=i;

   *k=cnt; } 请编写一个函数fun(chae*s),函数的功能是把s所指的字符串中的内容逆置。

  fun (char *s)

   {

   char b[N];

   int i=0, j;

   meset (b,0,N);

   for (j=strlen(s)-1; j>=0; j--)

   b [i++]=s[j];

   strcpy (s,b);}     函数fun的功能是:将a、b中的两位正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位依次放在变量c的个位和百位上,b中的十位和个位数依次放在变量c的十位和千位上。

#include <stdio.h>

void fun(int a,int b,long *c)

{*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);} 函数fun的功能是:将两个两位数的正整数a 、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c 数的十位和百位上,b数的十位和个位数依次放在c数的千位和十位上。

void fun(int a,int b,long*c)

{*c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10);}

函数fun的功能是:将两位正整数a、b合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位依次放在变量c的十位和千位上,b中的十位和个位数依次放在变量c的百位和个位上。

void fun(int a,int b,long*c)

{

*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10); 请编写函数fun,函数的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a的十位和个位数依次放在c位的千位和十位上,b的十位和个位数依次放在c的百位和个位上。

void fun(int a,int b,long *c)

{

*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);

}  请编写一个函数,函数的功能是:删除字符串中所有的空格。

int fun(char *str)

{

char *p=str;

int i=0;

while(*p){

  if(*p!=’ ’)str[i++]=*p;

        p++;

        }

        str[i]=0;}

函数fun的功能是:将a、b中的两位正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位依次放在变量c的百位和个位上,b中的十位和个位数依次放在变量c的十位和千位上。

#include <stdio.h>

void fun(int a,int b,long *c)

{ *c=(b%10)*1000+(a/10)*100+(b/10)*10+a%10;

}

}     函数fun的功能是:将a、b中的两位正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位依次放在变量c的十位和千位上,b中的十位和个位数依次放在变量c的个位和百位上。

void fun(int a,int b,int*c)

{

*c=(a%10)*1000+(b%10)*100

+(a/10)*10+(b/10);

}   请编写函数fun,函数fun的功能是:将a、b中的两位正整数合并形成一个新的整数放在c中。合并的方式为:将a中的十位和个位数依次放在变量c的千位和十位上,b中的十位和个位数依次放在变量c的各位和百位上。

void fun(int a,int b,long *c)

{

*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);} 函数fun的功能是:将s所指字符串中ASCII值为奇数的字符删除,串中剩余字符形成一个新串放在t所指定的数组中。

void fun(char *s,char t[])

{ int i,j=0;

for(i=0;i<strlen(s);i++)

if(s[i]%2==0)t[j++]=s[i];

t[j]=0;}请编写函数fun,函数的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。

void fun(char *ss)

{

char *p=ss;

inr i=0;

while(*p){

if((i%2)&&(*p>=’a’ &&*p<=’z’))

*p-=32;

p++;

i++;

}函数fun的功能是:将s所指字符串中除了下标为偶数,同时ASCII指也为偶数的字符外,其余的全部都删除:串中剩余字符所形成的一个新串放在t所指的数组中。

void fun(char *s,char t[ ])

{

int i,j=0;

for(i=0;i<strlen(s);i+=2)

if(s[i]%2==0)t[j++]=s[i];

t[j]=0;}  编写函数fun,它的功能是:求Fibonacci数列中大于t的最小一个数,结果由函数返回。其中Fibonacci数列F(n)定义为F(0)=0,F(1)=1,F(n)。。。

int fun(int t)

{

int f0=0,f1=1,f;

do

{f=f0+f1;

f0=f1;

f1=f;

}while(f<t);

return f;

} 请编写一个函授fun,它的功能是:找出一维整数组元素中最大的值和他所在的下标,最大的值和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。主函数中x 是数组名,n是x中的数据个数,max存放在大值,index存放最大值所在元素的下标。

void fun (int a[], int n, int *max, int *d)

   {

   int i;

   *max=a[0];*d=0;

   for (i=1; i<n;i++)

   if (*max<a[ i ])

   { *max=a[ i ];

   *d=i;

   }}请编写函数fun,函数的功能是:判断字符串是否为回文?是,函数返回1,主函数中输出:YES,否则返回0,主函数中输出NO。回文是指顺读t和倒都都一样的字符串。

int fun ( char * str)

   {

     int i , j= strlen (str) ;

   for ( i=0 ; i < j /2 ; i++)

   if     (str [ i ] ! = str [j- i - 1])

   return 0 ;

   return 1 ;

   }编写函数fun,它的功能是:求Fibonacci数列中大于t的最小一个数,结果由函数返回。其中Fibonacci数列F(n)定义为F(0)=0,F(1)=1,F(n)。。。

int fun(int t)

{

int f0=0,f1=1,f;

do

{f=f0+f1;

f0=f1;

f1=f;

}while(f<t);

return f;

} 请编写一个函授fun,它的功能是:找出一维整数组元素中最大的值和他所在的下标,最大的值和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。主函数中x 是数组名,n是x中的数据个数,max存放在大值,index存放最大值所在元素的下标。

void fun (int a[], int n, int *max, int *d)

   {

   int i;

   *max=a[0];*d=0;

   for (i=1; i<n;i++)

   if (*max<a[ i ])

   { *max=a[ i ];

   *d=i;

   }}

 空格符形成的新串放在t所指数组中。

void fun(char *s,char t[])

{

int i,j=0;

for(i=1;i<strlen(s);i+=2)

t[j++]=s[i];

t[j]=0;

}      函数fun的功能是:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s 所指串中剩余的字符形成的新串放在 t所指的数组中。

void fun(char *s,char t[])

{

int i,j=0;

for(i=0;i<strlen(s);i++)

if(!((i%2)= =0&&(s[i]%2)))

t[j++]=s[i];

t[j]=0;

}  请编写函数fun对长度为7个字符的字符串,除首、尾字符外,将其余5个字符ASCII码降序排列。

int fun(char *s,int num)

{

char ch;

int i,j;

for(i=1;i<6;i++)

for(j=i+1;j<6;j++)

{

if(*(s+i)<(s+j))

{

ch=*(s+j);

*(s+j)=*(s+i);

*(s+i)=ch;

}}}函数fun的功能是:将s所指字符串中除了下标为奇数、同时ASCII值也为奇数的字符之外,其余的所有字符都删除,串中剩余字符所形成的一个新串放在t所指的数组中。

viod fun(char*s, chat t[])

{

int i,j=0;

for(i=1;i<strlen(s);i+=2)

if(s[i]%2)

t[j++]=s[i];

t[j]=0;

} 函数fun的功能是:将s所指字符串中ASCII值为偶数的字符删除,串中剩余字符形成一个新串放在t所指数组中。

#include <stdio. h>

#include <string. h>

void fun (char*s, char t[])

{

int i, j=0;

for(i=0;i<strlen(s);i++)

if(s[i]%2) t[j++]=s[i];

t[j]=0;} 请编写函数fun,函数的功能是:将a、b中的两个两位整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位和个位依次放在变量c的千位和十位上。

void fun(int a,int b,int *c)

{

*c=(b/10)*1000+(a/10)*100+(b%10)*10+(a%10);}  请编写函数fun,函数fun的功能是:从s所指的字符串删除给定的字符。同一字母的大小写按不同字符处理。

int fun(char s[],char c)

{

char *p=s;

int i=0;

while(*p)

{

if(*p!=c)s[i++]=*p;

p++;}

s[i]=0;}假定输入的字符串中只包含字母和*号,请编写函数fun,它的的功能是:除了尾部的*号之外,将字符串中其他*全部删除。形参p已指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。

  void fun (char *a,char *p)

   {

   char *q=a;

   int  j=0;

   while (*q&&q<p){

   if (*q!=' *')

   a[j++]=*q;

   q++;

   }

   while (*p) a [j++] = *p++;

   a [j]=0;}假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数。在编写函数时,不得使用C语言提供的字符串函数。

void fun(char *a,int n,int h,int e)

{

char *p=a;

int j=0,len=0;

while(*p){p++;len++;}

while(j<len-h-e){

a[j]=a[h+j];

j++;

}

a[j]=0;

} 假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串尾部的*号全部删除,前面和中间的*号不删除。

void fun(char *a)

{

char *p=a;

while(*p)p++;p--;

while(*p==’*’)p--;

p++;

*p=0;

} 假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:使字符串中尾部的*号不得多于n个;若多于n个则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和前面的*号不删除。

void fun(char *a,int n)

{

char *p=a;

int j=0;

while(*p)p++;p--;

while(*p==’*’)p--;

p++;

while(j<n&&*p){

p++;

j++;

}

*p=0;

} 假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串的前导*号全部移到字符串的尾部。函数fun中给出的函数仅供参考。

void fun(char *a)

{ char *p,*q;

int n=0;

p=a;

while(*p==’*’)

{n++;p++;}

q=a;

while(*p){

*q=*p;

p++;q++;

}

for(;n>0;n--)

*q++=’*’;

*q=’\0’;

}假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:删除字符串中所有的*号。在编写函数时,不得使用C语言提供的字符串函数。

void fun(char *a)

{

int j=0;

char *p=a;

while(*p){

if(*p!=’*’)

a[j++]=*p;

p++;

}

a[j]=0;}假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了字符串前导*号之外,将串中其它*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。函数fun中给出的语句仅供参考。

void fun(char *a)

{

int i=0,k;

while(a[i]!==’*’)i++;

k=i;

while(a[i]!=’\0’)

{

if(a[i]!=’*’)

a[k++]=a[i];

i++;

}

a[k]=’\0’;}请编写一个函数void fun(char a[ ],char b[ ],int n),其功能是:删除一个字符串指定下标的字符。其中,a指向原字符串,删除指定字符后的字符串放在b所指的n中存入指定的下标。

viod fun (char a[ ],char

b[],int n)

{

strncpy (b,a,n);

b[n]=0;

strcat(b,a+n+1);

}请编写一个函数fun,它的功能是:将一个数字字符转换为一个整数(不得调用C语言提供的将字符转换为整数的函数)。例如,若输入字符串“-1234”,则函数将它转换为整数值-1234.

long fun (char *p)

   {

   int i, len , t;

   long x=0;

   len =strlen (p);

   if (p[0]== ' - ')

   { t= - 1; len--;p++;}

   else t=1;

   While (*p)

   x =x*10 - 48 +(*p++);

   return x*t;} 请编写函数fun,函数的功能是:使用实型整数保留2位小数,并对第三位进行四舍五入(规定实型数为正数)

float fun(float h)

{

long w;

w=h*100+1.5;

return (float)w/100;

}   请编写函数fun,函数的功能是:计算并输出……例如,在主函数中从键盘给n输入20后,输出为s=534.188884。注意:要求n的值大于1但不大于100.

double fun(int n)

{

int i;

double fac=1.0;

double sum=1.0;

for(i=2;i<=n;i++)

{fac+=sqrt(i);

sum+=fac;

}

return sum;

}   请编写函数fun,函数fun的功能是:计算并输出下列级数和:例如,当n=10时,函数值为0.909091.

double fun(int n)

{

double s=0.0;

int i;

for(i=1;i<=n;i++)

s=s+1.0/(i*(i+1));

rerurn s;}请编写一个函数fun,它的功能是:根据以下公式求JI的值(要求满足精度0.0005,即某项小于0.0005时停止送代):程序运行后,如果输入精度为0.0005,则程序输出为3.14…。

double fun(double eps)

{ double s=1,t=1./3;

int n=1;

while(t>=eps)

{s+=t;n++;t=t*n/(2.0*n+1);}return(s*2.0);}请编写函数fun,函数的功能是:计算并输出给定整数n的所有因子(不包过1和n本身)之和。规定n的值不大于1000.

int fun(int n)

{

int s=0,i;

for(i=2;i<n;i++)

if(n%i==0)s+=i;

return s;} 请编写函数fun,它的功能是:计算并输出下列多项式的值:sn=1+1/1!+1/2!+1/3!+1/4!+……1/n!。例如:在主函数中从键盘给n输入15,则输出为:s=2.718282。注意:要求n的值大于1但不大于100。

double fun(int n)

{

double s=1’

long t=1;

int i;

for(i=1;i<=n;i++){

t=t*i;

s+=1.0/t;}

return s;} 编写一个函数fun,它的功能是计算:s=根号下(ln(1)+ln(2)+ln(3)+……ln(m))S作为函数返回,在C语言中可以调用log(n)求ln(n)。log函数引用说明是:Double log(double x)例如,若m的值为:20,fun函数值为:60506583。

double fun(int m)

{

double s=0.0;

int i;

for(i=0;i<=m;i++)

s+=log(1.0*i);

s=sqrt(s);

return s;

}请编写函数fun,它的功能是:计算下列级数和,和值由函数值返回。例如,当n=10,x=0.3时,函数值为1.349859。

double fun(double x,int n)

{double s=1.0,y=x;

int i;

for(i=1;i<=n;i++)

{

s+=y/(double)jc(i);

y*=x;

}

return s;} 编写程序fun,它的功能是:根据以下分工计算s,计算结果作为函数值返回:n通过形参传入。

float fun (int n)

{

int i, j, t;

float s=0;

for(i=1; i<=n;i++){

t=0;

for (j=1; j<=i; j++)

t+=j;

s=s+1. 0/t;

}

return s;

}   编写函数fun,函数的功能是:实现B=A+A’即把矩阵A加上A的转置,存放在矩阵B中。计算结果在main函数中输出。

  void fun ( int  a [3] [3], int b [3] [3])

   {

   Int  c [3] [3];

   int i,j;

   for (i=0;i<3;i++)

     for (j=0; j<3; j++)

   {

   c [i][j]=a [j] [i] ;

   b [i] [j]=a[i] [j] +c [i] [j] ;

   }}请编写函数fun,其功能是:计算并输出当x﹤0.97时下列多项式的值,直到Sn-Sn-1<0.000001为止。

double fun(double x)

{

int n=1;

double sn=1;

double xn=1,xn1=0;

while(fabs(xn-xn1)>=0.000001)   {xn=xn*x*(0.5-n+1)/n;

    n+=1;

    sn+=xn;}

  return(sn);}  请编写一个函数fun,它的功能是:计算并输出下列多项式的值:

double fun (int n)

   {

   double s=0, t=1;

   int i ;

   for ( i=1; i<=n;i++)

   { t*=1;

   s+=1. 0/t; }

   return s;}请编写一个函数fun,它的功能是:计算并输出给定数组(长度为9)中每相邻两个元素之平均值的平方根之和。

double fun (double x[9])

{int i ;

 double avg=0. 0, sum=0. 0 ;

 for (i=0 ; i<8 ; i++){

 avg =( x [i] + x [i+1])/2;

sum += sqrt ( avg);}

  return sum ;请编写一个函数fun,它的功能是:计算并输出给定10个数的方差:例如,给定的10个数为95.0、89.0、76.0、65.0、88.0、72.0、85.0、81.0、90.0、56.0、1输出为s=11.730729.

double fun (double x [10])

{ Int i;

double  avg =0. 0, sum =0. 0, abs =0. 0, fc;

for (i=0; i<10; i ++)

sum +=x[ i ];

avg =sum/10;

for (i=0; i<10; i++)

abs +=(x[i]- avg)*(x [i ] -avg );

fc =sqrt (abs/10);

return fc ;}编写函数fun,其功能是:根据以下公式求p的值,结果由函数值带回。m与n为两个正整数且要求m>n。

p=m!/(n!*(m-n)!)

float fun(int m, int n)

{

float p;

p=1.0*jc(m)/jc(n)/jc(m-n);

return p;}请编写函数fun,函数的功能是:统计各年龄段的人数,N个年龄能通过调用随机函数获得,并放在主函数的age数组中:要求函数把0到9岁的年龄段的人数放在d[0]zhong 把10—19岁的年龄段的人数放在d[1]中,其余依此类推,把100岁(含100岁)的年龄段的人数放在d[10]中。结果在主函数中输出。

void fun ( int *a , int *b)

   {int i , j ;

   for ( i=0; i<M ; i++); b[ i ]=0;

   for ( i=0; i<N; i++)

   {   j=a [ i ]/10;

   if ( j>10) b [M-1]++;

   else  b [j ]++;}}假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了字符串前导和尾部的*号之外,将串中其他*号全部删除。形参h已指向字符串中的第一个字母,形参p已指向字符串中最后一个字母。在编写函数时,不得使用c语言提供的字符串函数。

void fun(char *a,char *h,char *p)

{

int j=0;

char *q=a;

while(*q&&q<h)a[j++]=*q++;

while(*h&&*p&&h<p)

{

if(*h!=’*’)a[j++]=*h;

h++;

}

while(*p)a[j++]=*p++;

a[j]=0;

} 假定输入字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串的前导*号不得多于n个;若多于n个,则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除。函数fun中给出的语句仅供参考。

void fun(char*a,int n)

{

int i=0,k=0;

while(a[k]= =’*’)k++;

if(k>n)

{

i=n;j=k;

for(;a[j]!=0;j++)

  a[i++]=a[j];

a[i]=0;

}}编写函数fun,函数的功能是求出小于或等于lim的所有素数并放在aa数组中,函数返回所求出的素数的个数。函数fun中给出的语句仅供参考。

#include <stdio.h>

#define MAX100

int fun(int lim,int aa[MAX])

{int i,j,k=0;

for(i=2;i<=lim;i++)

{

for(j=2;j<=(i/2);j++)

if(i%j==0)break;

if(j>(i/2))aa[k++]=i;

} return k;}

编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数。

int  fun (char  *str, char *substr)

   {

   int cnt =0 ;

   char *p =str, *q ;

   while (*p) {

   q=strstr (p,substr) ;

   if (q==NULL) break ;

   p=q +strlen (substr) ;

   cnt++;}请编写一个函数void fun(char*tt,int pp[ ]),统计在tt所指字符串中‘a’至‘z’26个小写字母各自出现在的次数,并依次放在pp数组中。

void fun(char*tt, int pp[ ])

{char *p=tt;

int i;

for(i=0;i<26;i++)

pp[i]=0;

while(*p)

{if(*p>=’a’&&*p<=’z’)

pp[*p-‘a’]+=1;

p++;

}}请编写函数fun,函数的功能是:利用一下所示的简单迭代方法求方程求方程:cos(x)-x=0的一个实根。xn+1=cos(xn)迭代步骤如下:(1)取x1的初值为0.0;(2)x0=x1,把x1的值赋给x0;(3)x1=cos(x0),求出一个新的x1;(4)若x0-x1的绝对值小于0.000001执行步骤(5)否则执行步骤(2);(5)所求x1就是方程cos(x)-x=0的一个实根作为函数值返回。程序将输出结果为:Root=0.739058。

float fun()

{

float x0,x1=0.0;

do{

x0=x1;

x1=cos(x0);

}while(fabs(x0-x1)>0.000001);

return x1;

}  程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[ ] [N],int n),函数的功能是:使数组左下三角元素中的值乘以n。

int fun(int a[][N],int n)

{int i,j;

 for(i=0;i<N;i++)

for(j=0;j<=i;j++)

a[i][j]*=n;

}程序定义了N×N的二级数组,并在主函数中赋值,请编写函数fun,函数的功能是:求出数组周边元素的平均值并作出函数值饭给主函数中的s。

double fun(int w[][N])

{ int i,j,n=0;

double sum=0;

for(i=0;i<N;i++)

{  sum+=w[0][i]+w[N-1][i];

n+=2;}

for(i=1;i<N-1;i++)

{  sum+=w[i][0]+w[i][N-1];

n+=2;}

return sum/n;

}程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[ ][N]),函数的功能是:使数组左下三角元素中的值全部置成0。

int fun(int a[][N])

{int i,j;

for(i=0;i<N;i++)

  for(j=0;j<=i;j++)

  a[i][j]=0;} 编写程序,实现矩阵(3行3列)的转置(即行列互换)

int fun ( int array[3] [3])

   {

   int i, j, arr [3] [3];

memcpy(arr,array,9*sizeof(int) );

   for ( i=0; i<3; i++)

   for ( j=0; j<3; j++)

   array [ i ] [ j ] =arr [ j ] [ i ] 请编写函数fun,函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串,函数fun中给出的语句提供参考。

void fun (char a[M][N]),char *b)

{int i;*b=0;

for(i=0;i<M;i++)strcat(b,a[i]);

}   请编写函数fun,函数的功能是:将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。

void fun (char s[] [N] , char *b)

   {int i, j, n=0;

   for (i=0; i<N; i++)

   /*请填写其相应语句完成其功能*/

   {for ( j=0 ; j<M; j++) {b [n] =s [j ] [i ];

   n= i *M+j+1;

   }}

   b [n] = ' \0 ' ;}  请编写函数fun,函数的功能是:将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中。一维数组中数据的个数存在形参n所指的存储单元中。

void fun ( int (*s) [10] , int *b, int *n, int mm, int nn)

   {

   int i, j, k ;

   for (i=0 ; i<mm; i++)

     for (j=0; j<nn; j++)

 { k=i *nn +j ;

   b [k] =s [ i ] [j ];}

  *n= mm*nn;}请编写函数fun,函数的功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。函数fun中给出的语句仅供参考。

# include <stdio. h>

   void fun ( int (*s) [10] , int *b , int *n, int mm, int nn)

   {

   int i, j, np=0;

   for ( i=0; i<nn; i++)

     for ( j=0; j<mm; j++)

   {

   b[np] = s [ j ] [ i ]; np=i*mm+j+1;

   }

   *n=np ;}程序定义了N×N的二维数组,并在主函数中自动赋值,请编写函数fun,它的功能是:使数组右上三角元素中的值乘以m。

int fun(int a[][N],int m)

{

int i,j;

for(i=0;i<N;i++)

  for(j=i;j<N;j++)

a[i][j]*=m;

} 请编写一个函数void fun(int t t[M] [N],int pp [N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指唯一数组中。二维数组中的数已在主函数中赋予。

void fun(int tt[M][N],int pp[N])

{

int i,j,min,k;

for(i=0;i<N;i++)

{

min=tt[0][i];k=0;

for(j=1;j<M;j++)

if(min>tt[j][i])

{min=tt[j][i];

k=j;

}

pp[i]=tt[k][i];

}}请编写函数fun,它的功能是:求出一个2×M整型二维数组中最大元素的值,并将此值返回调有函数。

fun(int a[][M])

{

int i,j,max=a[0][0];

for(i=0;i<2;i++)

 for(j=0;j<M;j++)

if(max<a[i][j])

max=a[i][j];

return max;}  编写一个函数,从num个字符串中找出最长的一个字符串,并通过形参指针max传回该串地址。(注意:主函数中用****作为结束输入的标志,函数fun中给出的语句仅供参考)。

fun(char (*a)[81],int num,char **max)

{

int i,k=0,maxlen;

maxlen=strlen(a[k]);

for(i=1;i<num;i++)

{

if(strlen(a[i])>maxlen)

{maxlen=strlen(a[i]);

k=i;

}}

*max=a[k];}  请编写函数fun,函数的功能是:将大于形参m且紧靠m的k个素数存入xx所指的数组中。19,23,29,31,37,函数fun中给出的语句仅供参考。

void fun(int m,int k,int xx[])

{

int i,j=1,t=m+1;

while(j<=k)

{

for(i=2;i<t;i++)

if(t%i= =0)break;

if(i= =t){

xx[j-1]=i;

j++;}

t++;}编写函数fun,它的功能是:求出能整除形参x切不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。

void fun(int x,int pp[],int*n)

{int i;*n=0;

for(i=1;i<=x;i++)

if((x%i==0)&&(i%2))pp[(*n)++]=i;

}请编写函数fun,它的功能是:求出ss所指字符串中指定字符个数,并返回次值。

int fun(char *ss,char c)

{int cnt=0;

char *p=ss;

while(*p){

if(*p==c)cnt++;

p++;}return cnt;

}   请编写函数fun,函数的功能是,移动字符串中的内容,移动的规则如下:把第一到m个字符,平均移到字符串的醉最后,把m+1个到最后的字符移到字符串的前部。

void fun (char *w, int m)

   {

   int i ;

   for ( i=0 ; i<m ; i++)

   fun 1 (w);

   }  请编写函数fun,其功能是求出数组的最大元素在数组中的下标并存放在k所指的存储单元。

int fun(int *s,int t,int *k)

{

int i,pos=0,max=*s;

for(i=1;i<t;i++)

{

if(max<*(s+i)){

max=*(s+i);

pos=i;

}}

*k=pos;

}编写一个函数fun,它的功能是:比较两个字符串的长度(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。

char *fun (char *s, char *t)

   {

   int i ;

   char *p =s ,*q=t;

   for (i=0; *p&&*q ; i++){

   p++ ; q++;

   }

   if (*p==0&&*q==0)

   return s;

   if (*p) return s;

   else return t;

   }编写一个函数fun,它的功能是:实现两个字符串的连续(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。

  void  fun (char   p[], char p2[])

   {

   char *p=p1;

   while (*p)p++;

   while (*p2)*p++=*p2++;

   *p=0;

   }  请编写一个unsigned  fun(unsigned w ),w是一个大雨于10的无符号整数,若w是n(n>=2)位的整数,函数求出w的后n-1位的数作为函数值返回。

例如:w值为5923,则函数返回923;w值为923,则函数返回23.

unsigned fun ( unsigned w)

   {

   if ( w >=10000) return w%10000;

   if ( w >=1000) return w%1000;

   if ( w >=100) return w%100;

   return w%10;

   }    请编写函数fun,函数的功能是,统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词有小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。

int fun ( char *s )

   {

   int k=1;

   while (*s)

   {  if (*s==' ')k++; s++;  }

   return k ;

   }

   ;  请编写函数fun,函数的功能是:求出二级数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。

int fun(int a [M][N])

{

int tot=0,i,j;

for(i=0;i<N;i++)

{

 tot +=a[0][i];

 tot +=a[M-1][i];

}

for(i=1;i<M-1;i++){

 tot +=a[i][0];

 tot +=a[i][N-1];

}

 return tot;

}

}

请编写一个函授fun,它的功能是:找出一维整数组元素中最大的值和他所在的下标,最大的值和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。主函数中x 是数组名,n是x中的数据个数,max存放在大值,index存放最大值所在元素的下标。

void fun (int a[], int n, int *max, int *d)

   {

   int i;

   *max=a[0];*d=0;

   for (i=1; i<n;i++)

   if (*max<a[ i ])

   { *max=a[ i ];

   *d=i;

   }

   }   请编写函数fun,函数的功能是:判断字符串是否为回文?是,函数返回1,主函数中输出:YES,否则返回0,主函数中输出NO。回文是指顺读t和倒都都一样的字符串。

int fun ( char * str)

   {

     int i , j= strlen (str) ;

   for ( i=0 ; i < j /2 ; i++)

   if     (str [ i ] ! = str [j- i - 1])

   return 0 ;

   return 1 ;

   }  

  

更多相关推荐:
C语言程序设计第四次(2.8)实验报告

C语言程序设计实验报告专业班级日期11月26日成绩实验组别第327次实验指导教师李开学生姓名学号同组人姓名实验名称实验8指针实验一实验目的1熟练掌握指针的说明赋值使用2掌握用指针引用数组的元素熟悉指向数组的指针...

C语言课程设计报告

河南理工大学C程序设计报告C语言课程设计报告题目小学算术运算测试mathc设计者史前利专业班级通信工程1205学号31120xx20xx1指导教师刘洁所属系部计算机科学与技术20xx年07月03日河南理工大学河...

C语言课程设计报告范例

C语言课程设计报告设计题目专业班级学号姓名任课老师时间目录一课程设计题目及所涉及知识点二课程设计思路及设计流程图三课程设计中遇到的难点及解决办法四小结五附录原程序2一课程设计题目及所涉及知识点一课程设计题目1基...

C语言课程设计报告

河南理工大学计算机科学与技术学院课程设计报告20XX20XX学年第一学期课程名称C语言课程设计设计题目《小学算术运算测试》学生姓名学号专业班级计算机07-2班指导教师20XX年9月12日目录1.设计任务书21.…

C语言程序设计五猴分桃问题实验报告

课程设计报告学院系专业名称课程设计科目所在班级学生学号学生姓名指导教师完成时间吉林大学珠海学院计算机科学与技术系软件工程C语言程序课程设计10班04121010赵学文郭晓燕20xx年3月5月五猴分桃问题一设计任...

浅谈C语言程序设计教学的实践与心得

浅谈语言程序设计教学的实践与心得庞师铎摘要在21世纪的大环境下各种实践性学科都将面临着强大的冲击而作为计算机软件开发等的入门语言更显得尤为关注强调实验的重要性可以促使学生在学习C语言的基本知识之外加强编程实践使...

c语言课程设计体会

体会通过这次C语言的课程设计我明白了很多也知道了很多更收获了很多在课程设计的过程中出现过困难三周的课程设计已经结束了回想学习C语言的过程中既有快乐又有烦恼回顾这次课程设计至今我仍感慨颇多的确自从拿到题目到完成整...

C语言程序设计第三次2.5实验报告

C语言程序设计实验报告专业班级日期11月26日成绩实验组别第327次实验指导教师李开学生姓名学号同组人姓名实验名称编译预处理实验一实验目的1掌握文件包含宏定义条件编译assert宏的使用2练习带参数的宏定义条件...

C语言课程设计报告电子版

C语言课程设计报告姓名张林班级计算111班学号11060101241A类基本题1围绕着山顶有10个圆形排列的洞狐狸要吃兔子兔子说可以但必须先找到我我就藏身于这十个洞中的某个洞你从号洞找下次隔个洞即3号洞找第三次...

c语言课程设计报告-西安邮电大学

西安郵電大學C语言课程设计报告书学院名称:计算机学院学生姓名:专业名称:班级:学号:指导教师:时间:20XX年06月03日至20XX年06月12日实验题目:学生通讯录管理系统一、实验目的通过本次实习,进一步巩固…

C语言课程设计报告论文

课程设计报告东华理工大学长江学院课程设计题目学生选修课程系统学生学号09325208学生姓名专业电子信息工程指导教师黄笑鹃刘自强20xx年1月6日目录目录1一设计目的与说明2目的2说明2二总体设计分析2三各功能...

c语言程序设计报告 学生成绩管理系统

学生成绩管理系统课程设计报告书学生成绩管理系统单位分院班级学号姓名指导老师完成日期20xx年7月14日1学生成绩管理系统内容摘要摘要本次课程设计的课题是学生成绩管理系统本文介绍课程设计课题的选题意义说明了本系统...

c语言程序设计总结(34篇)