C语言程序二级 之知识点 程序填空 程序设计 程序修改

news2024/11/13 10:36:30

 一 知识点

宏定义是指用一个宏名(名字)来代表一个字符串。宏定义的功能是在编译预处理时,对程序中所有出现的"宏名"都用宏定义中的字符串去代换,这称为"宏代换"或"宏展开"。无参宏定义的一般格式:#define 标识符 语言符号字符串,其中:“define”为宏定义命令;“标识符”为所定义的宏名,通常用大写字母表示,以便于与变量区别;“语言符号字符串”可以是常数、表达式、格式串(格式串是用双引号括起来的字符串)等,

宽度和位数

%6.2f表示输出6位宽度,2位小数,所以被截取的小数位:0.006四舍五入,结果为123.46;%3.0f表示输出3位宽度,0位小数

以二进制方式向文件读写一组数据

fread(buffer,size,count,fp)

fwrite(buffer,size,count,fp)

buffer 是一个地址,对fread来说,他是用来存放从文件读入的数据存储区的地址

size表示要读写的字节数

count 要读写多少个数据项

fp:file类型的指针

scanf函数

在scanf()函数的格式字符前可以加入一个正整数指定输入数据所占的宽度,但不可以对实数指定小数位的宽度。

scanf函数有返回值,其值就是本次调用scanf函数时正确读入的数据项个数

scanf函数从输入字符流中按照格式控制指定的格式解析出相应数据,送到指定地址中

在scanf函数中的格式控制字符串不会输出到屏幕上

非空线性结构应满足的2个条件

1 有且只有一个根节点

2 每个节点最多有一个前件,也最多有一个后件

数据库
第一范式

要求数据库表的每一列都是不可分割的基本数据项,即每个属性都是原子的,不可再分,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性

特点 确保表中的字段值都是单一的,不可再分

表中不存在重复列

表中每一行值包含一个实例的信息

第二范式

第二范式是在第一范式的基础上建立起来的,它要求数据库表中的每个非主键属性完全依赖于整个主键,而不是仅仅依赖于主键的一部分

特点 表必须满足1NF

表的非主键列必须完全依赖于主键,而不是部分依赖于主键

消除部分依赖,减少数据冗余和更新异常 

第三范式

含义及特点

第三范式是在第二范式的基础上进一步规范化,他要求一个数据库表中不包含已在其他表中已包含的非主关键字信息。即,每个非主属性都不依赖于其他非主属性

表 必须满足2NF

表的非主键列不能依赖于其他非主键列

消除传递依赖,进一步将减少数据冗余

主键和非主键

 部分依赖和完全依赖

部分依赖

部分依赖指的是一个非主键属性或属性集合依赖于主键的一部分,而不是整个主键。在关系数据库中,如果一个非主键属性只依赖于主键的某个子集,而不是整个主键,那么就存在部分依赖。这种依赖关系是不理想的,因为它可能导致数据重复和更新异常。例如,在一个学生选课表中,如果主键是学生ID和课程ID的组合,而教师姓名只依赖于课程ID而不依赖于学生ID,那么教师姓名就部分依赖于主键,这可能导致数据重复和更新困难。

完全依赖

完全依赖则是指一个非主键属性或属性集合完全依赖于整个主键。在关系数据库中,如果非主键属性仅由主键的唯一组合决定,且不存在部分依赖的情况,那么就称该属性完全依赖于主键。这种依赖关系有助于确保数据的完整性和一致性。例如,在一个学生信息表中,如果主键是学号,而姓名、年龄等属性都完全依赖于学号,那么这些属性就完全依赖于主键。

fabs函数  double floor(double x)  求x的绝对值

 #include <stdio.h>
void fun(char *a,char b)
{ while(*(a++)!='\0');
  while(*(a-1)<b) *(a--)=*(a-1);
  *(a--)=b;
}
main()
{  char s[8]="pmfc",c;
   c=getchar( );
   fun(s,c);
   puts(s);
}

数据流图(DFD)的作用是( )。

A 描述软件系统的控制流

B 支持软件系统功能建模

C 支持软件系统的面向对象分析

D 描述软件系统的数据结构

解题思路:数据流图是系统逻辑模型的图形表示,从数据传递和加工的角度,来刻画数据流从输入到输出的移动变化过程,它直接支持系统的功能建模。所以本题应选B选项。

二 选择题 

#include <stdio.h>
main()
{
   char *s="120119110";
   int n0,n1,n2,nn,i;
   n0=n1=n2=nn=i=0;
   do{
      switch(s[i++])
      {  default   : nn++;
         case  '0' : n0++;
         case  '1' : n1++;
         case  '2' : n2++;
      }
    } while(s[i]);
   printf("n0=%d,n1=%d,n2=%d,nn=%d\n",n0,n1,n2,nn);
}
程序的运行结果是

A n0=3,n1=8,n2=9,nn=1

B n0=2,n1=5,n2=1,nn=1

C n0=2,n1=7,n2=10,nn=1

D n0=4,n1=8,n2=9,nn=1

 解析:

#include <stdio.h>
int disp(char* str)
{
    while (*str) putchar(*str++);
    return *str;
}
main()
{
    printf("%d\n", disp("NAME"));
}
程序运行后的输出结果是 A

A NAME0

B NAMEE

C NAME

D NAME\0

 

 以下关于C语言函数参数传递方式的叙述正确的是

A 数据只能从实参单向传递给形参

B 数据可以在实参和形参之间双向传递

C 数据只能从形参单向传递给实参

D C语言的函数参数既可以从实参单向传递给形参,也可以在实参和形参之间双向传递,可视情况选择使用

 

#include <stdio.h>
void f(int x[], int n)
{
  if ( n> 1)
  {   f(&x[1], n-1);
      printf("%d,", x[0]);
  }
  else
   printf("%d,", x[0]);
}
main()
{
  int  z[6] = {1,2,3,4,5,6};
  f(z,6);
  printf("\n");

#include  <stdio.h>
    int *f(int *s)
    {  s+=2;
       s[1] +=6;
       *s=7;
       return s;
    }
    main( )
    {  int  a[5]={1,2,3,4,5}, *p=a;
       p= f(p);
       printf("%d,%d,%d,%d", a[0], a[1], *p,p[1]);
    }
  程序执行后的输出结果是() 

 

<九>

三 填空题 修改 程序设计

使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为ch的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序在文件blank1.c中。
不得增行或删行,也不得更改程序的结构!

#include    <stdio.h>
#include    <stdlib.h>
#define    N    8
typedef  struct list
{  int  data;
   struct list  *next;
} SLIST;
SLIST *creatlist(char  *);
void outlist(SLIST  *);
int fun( SLIST  *h, char  ch)
{  SLIST  *p;        int  n=0;
   p=h->next;
/**********found**********/
   while(p!=NULL)
   {   n++;
/**********found**********/
       if (p->data==ch)  return n;
       else  p=p->next;
   }
   return 0;
}
void main()
{  SLIST  *head;       int  k;      char  ch;
   char  a[N]={'m','p','g','a','w','x','r','d'};
   head=creatlist(a);
   outlist(head);
   printf("Enter a letter:");
   scanf("%c",&ch);
/**********found**********/
   k=fun(head,ch);
   if (k==0)   printf("\nNot found!\n");
   else       printf("The sequence number is :  %d\n",k);
}
SLIST *creatlist(char  *a)
{  SLIST  *h,*p,*q;      int  i;
   h=p=(SLIST *)malloc(sizeof(SLIST));
   for(i=0; i<N; i++)
   {  q=(SLIST *)malloc(sizeof(SLIST));
      q->data=a[i];  p->next=q;  p=q;
   }
   p->next=0;
   return  h;
}
void outlist(SLIST  *h)
{  SLIST  *p;
   p=h->next;
   if (p==NULL)  printf("\nThe list is NULL!\n");
  else
  {  printf("\nHead");
     do
     { printf("->%c",p->data);  p=p->next;  }
     while(p!=NULL);
     printf("->End\n");
  }
}

 使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:把形参a所指数组中的偶数按原顺序依次存放到a[0]、a[1]、a[2]…中,把奇数从数组中删除,偶数的个数通过函数值返回。
例如,若a所指数组中的数据最初排列为:9,1,4,2,3,6,5,8,7,删除奇数后a所指数组中的数据为:4,2,6,8,返回值为4。

#include     <stdio.h>
#define    N    9
int fun(int  a[], int  n)
{  int  i,j;
   j = 0;
   for (i=0; i<n; i++)
/**********found**********/
      if (a[i]%2== 0) {
/**********found**********/
        a[j] = a[i]; j++;
      }
/**********found**********/
   return j;
}
void main()
{  int  b[N]={9,1,4,2,3,6,5,8,7}, i, n;
   printf("\nThe original data  :\n");
   for (i=0; i<N; i++)  printf("%4d ", b[i]);
   printf("\n");
   n = fun(b, N);
   printf("\nThe number of even  :%d\n", n);
   printf("\nThe even  :\n");
   for (i=0; i<n; i++)  printf("%4d ", b[i]);
   printf("\n");
}

使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:按以下递归公式求函数的值。
 


例如,当给n输入5时,函数值为18;当给n输入3时,函数值为14。
请改正程序中的错误,使它能得出正确的结果 

#include <stdio.h>
/************found************/
int fun (int n)
{  int  c;
/************found************/
   if(n==1)
     c = 10 ;
   else     
     c= fun(n-1)+2;  
   return(c);
}
void main()
{  int   n;
   printf("Enter  n :  "); scanf("%d",&n);
   printf("The result : %d\n\n", fun(n));
}

使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:删除指针p所指字符串中的所有空白字符(包括制表符、回车符及换行符)。
输入字符串时用'#'结束输入。
请改正程序中的错误,使它能输出正确的结果。

#include <string.h>
#include <stdio.h>
#include <ctype.h>
void fun ( char *p)
{  int i,t;  char c[80];
/************found************/
   for(i = 0,t = 0; p[i] ; i++)
      if(!isspace(*(p+i))) c[t++]=p[i];
/************found************/
   c[t]='\0';
   strcpy(p,c);
}

void main( )
{  char c,s[80];
   int i=0;
   printf("Input a string:");
   c=getchar();
   while(c!='#')
   {  s[i]=c;i++;c=getchar(); }
   s[i]='\0';
   fun(s);
   puts(s);
}

 程序设计题

使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,其功能是:将ss所指字符串中所有下标为奇数位上的字母转换为大写(若该位置上不是字母,则不转换)。
例如,若输入"abc4EFg",则应输出"aBc4EFg"。

#include <stdio.h>
#include <string.h>
void  fun  ( char *ss )
{
	int i;
	for(i=0;ss[i]!='\0';i++)
	{
		if(i%2==1&&ss[i]>='a'&&ss[i]<='z') //判断i是否为奇数且字符串是否在a<z之间
			ss[i]=ss[i]-32;
	}

}

void main( )
{ char tt[81] ;
  void NONO (  );
  printf( "\nPlease enter an string within 80 characters:\n" ); gets( tt );
  printf( "\n\nAfter changing, the string\n  \"%s\"", tt );
  fun( tt );
  printf( "\nbecomes\n  \"%s\"\n",  tt  );
  NONO ( );
}

void NONO ( )
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
  FILE *fp, *wf ;
  char tt[81] ;
  int i ;

  fp = fopen("in.dat","r") ;
  wf = fopen("out.dat","w") ;
  for(i = 0 ; i < 10 ; i++) {
    fscanf(fp, "%s", tt) ;
    fun( tt ) ;
    fprintf(wf, "%s\n", tt) ;
  }
  fclose(fp) ;
  fclose(wf) ;
}

 使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:使字符串中尾部的*号不多于n个,若多于n个,则删除多余的*号;若少于或等于n个,则不做任何操作,字符串中间和前面的*号不删除。
例如,字符串中的内容为“****A*BC*DEF*G*******”,若n的值为4,删除后,字符串中的内容应为“****A*BC*DEF*G****”;若n的值为7,则字符串中的内容仍为“****A*BC*DEF*G*******”。n的值在主函数中输入。
编写函数时,不得使用C语言提供的字符串函数。

注意:部分源程序在文件prog1.c中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include <stdio.h>
void  fun( char *a,int  n )
{
{
	int i=0,k=0;
	char *p, *t;
	p=t=a;  /*将指针移动到字符串末尾*/
	while(*t)
	 t++;
	 t--;  /*从后往前如果是'*' 则使k++,找到最后一个*所在的位置,并记录'*'的个数*/
	while(*t=='*') /*指针t指向前一个,同时标量k增加一*/
	{k++;t--;}
	if(k>n)
	{while(*p&&p<t+n+1)
	{ a[i]=*p;//把n个*号和其余字符重新保留
	i++;p++;
	}
	a[i]='\0';
	}
	}
}

void main()
{  char  s[81];  int  n;
   void NONO (  );
   printf("Enter a string:\n");gets(s);
   printf("Enter n :  ");scanf("%d",&n);
   fun( s,n );
   printf("The string after deleted:\n");puts(s);
   NONO();
}
void NONO()
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
  FILE *in, *out ;
  int i, n ; char s[81] ;
  in = fopen("in.dat","r") ;
  out = fopen("out.dat","w") ;
  for(i = 0 ; i < 10 ; i++) {
    fscanf(in, "%s", s) ;
    fscanf(in, "%d", &n) ;
    fun(s,n) ;
    fprintf(out, "%s\n", s) ;    
  }
  fclose(in) ;
  fclose(out) ;
}

 使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,函数fun的功能是:将两个两位数的正整数 a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。
例如,当a=45,b=12时,调用该函数后c=4152。
数据文件IN.DAT中的数据不得修改

#include <stdio.h>
void fun(int a, int b, long *c)
{

	*c=b%10+(a%10)*10+(b/10)*100+(a/10)*1000;
}
void main()
{  int a,b; long c;
   void NONO ( );
   printf("Input a, b:");  scanf("%d %d", &a, &b);
   fun(a, b, &c);
   printf("The result is: %d\n", c);
   NONO();
}
void NONO (  )
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
  FILE *rf, *wf ;
  int i, a,b ; long c ;

  rf = fopen("in.dat", "r") ;
  wf = fopen("out.dat","w") ;
  for(i = 0 ; i < 10 ; i++) {
    fscanf(rf, "%d,%d", &a, &b) ;
    fun(a, b, &c) ;
    fprintf(wf, "a=%d,b=%d,c=%ld\n", a, b, c) ;
  }
  fclose(rf) ;
  fclose(wf) ;
}

第 42 题

使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:给一维数组a输入任意4个整数,并按如下的规律输出。例如,输入1、2、3、4,程序运行后输出以下方阵:

void fun(int *a)
{ int I,j,k,m;
  printf("Enter 4 number: ");
  for(I=0;I<M;I++) scanf("%d",&a[I]);
  printf("\n\nThe result :\n\n ");
  for(I=M;I>0;I--)
      { k=a[M-1];//K为4
        for(j=M-1;j>0;j--)
/*************found**************/
            a[j]=a[j-1]; //
        a[0]=k;
        for(m=0;m<M;m++) printf("%d ",a[m]);
        printf("\n ");
      }
}
void main()
{ int a[M];
  fun(a); printf("\n\n ");
}

<13>

使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:计算
 

 直到


若x=2.5,函数值为1.917915。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。

#include   <stdio.h>
#include   <math.h>
double fun(double  x)
{  double  f, t;      int  n;
   f = 1.0 + x;
   t=x;
   n = 1;
   do {
      n++;
      t*=(-1.0)*x/n;
      f += t;
   }
    while(fabs(t)>=1e-6);
   return  f;
}
void main()
{   double x, y;
   x=2.5;
   y = fun(x);
   printf("\nThe result is :\n");
   printf("x=%-12.6f y=%-12.6f\n", x, y);
}

<13> 好难啊 希望考试如果从天明题库找的话别抽到这个题 

第 43 题

使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,其功能是:计算并输出当x<0.97时,如下多项式的值,直到|Sn-S n-1|<0.000001为止。
 

。例如,若主函数从键盘给x输入0.21后,则输出为S=1.100000。

#include  <math.h>
#include  <stdio.h>
double fun(double x)
{ 
	double s1=1.0,p=1.0,sum=0.0,s0,t=1.0;
	int n=1;
	do
	{
		s0=s1;
		sum+=s0;
		t*=n;
		p*=(0.5-n+1)*x;
		s1=p/t;
		n++;
	}
	while(fabs(s1-s0)>=1e-6);
	return sum;
}
void main()
{ int i;
  double x,s;
  FILE *out;
  printf("Input x: ");
  scanf("%lf",&x);
  s=fun(x);
  printf("s=%f\n ",s);
  /******************************/				 /*这里包含输出文件程序*/
  out=fopen("out.dat","w");
  for(i=20;i<30;i++)
    	fprintf(out,"%f\n",fun(i/100.0));
  fclose(out);
  /******************************/
}

使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:统计长整数n的各位上出现数字1、2、3的次数,并用外部(全局)变量c1、c2、c3返回主函数。
例如,当n=

#include <stdio.h>
int c1,c2,c3;
void fun(long n)
{
	 c1=c2=c3=0;
	 while(n)
	 {
		switch(n%10)
		{
		case 1:
			c1++;break;
		case 2:
			c2++;break;
		case 3: 
			c3++;
		}
		n/=10;
	}
}

void main()
{
	 long n=123114350L;
	 fun(n);
	 printf("\nThe result: \n");
 	 printf("n=%ld c1=%d c2=%d c3=%d\n",n,c1,c2,c3); 
}

123114350时,结果应该为:c1=3  c2=1  c3=2。

使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,其功能是:计算并输出下列多项式的值。
 


例如,在主函数中从键盘为n输入50后,输出为S=1.718282。
注意:要求n的值在大于1但不大于100之间。
 

#include <stdio.h>
double fun(int  n)
{
	double s=0,tmp=1;
	int i;
	for(i=1;i<=n;i++)
	{
		tmp=tmp*i;
		s+=1.0/tmp;
	}
	return s;

}
void main()
{ int  n;    double  s;
  void NONO( );
  printf("\nInput n:  ");  scanf("%d",&n);
  s=fun(n);
  printf("\n\ns=%f\n\n",s);
  NONO();
}
void NONO()
{/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */
  FILE *rf, *wf ; int n, i ; double s ;
  rf = fopen("in.dat","r") ;
  wf = fopen("out.dat","w") ;
  for(i = 0 ; i < 10 ; i++) {
    fscanf(rf, "%d", &n) ;
    s = fun(n) ;
    fprintf(wf, "%lf\n", s) ;
  }
  fclose(rf) ; fclose(wf) ;
}

 使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:将形参s所指字符串中所有ASCII码值小于97的字符存入形参t所指字符数组中,形成一个新串,并统计出符合条件的字符个数作为函数值返回。

例如,形参s所指的字符串为:Abc@1x56*,程序执行后t所指字符数组中的字符串应为:A@156*。

#include  <stdio.h>
int fun(char  *s, char  *t)
{ int  n=0;
  while(*s)
  { if(*s < 97) {
/**********found**********/
     *(t+n)=*s;  n++;  }
/**********found**********/
     s++ ;
  }
  *(t+n)=0;
/**********found**********/
  return  n ;
}
void main()
{ char  s[81],t[81];    int  n;
  printf("\nEnter a string:\n");  gets(s);
  n=fun(s,t);
  printf("\nThere are %d letter which ASCII code is less than 97: %s\n",n,t);
}

使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,其功能是:根据以下公式求P的值,结果由函数值带回。m与n为两个正整数且要求m>n。

例如:m=12,n=8时,运行结果为495.000000。

注意:部分源程序在文件prog1.c中。

16


#include <stdio.h>
float  fun(int m, int n)
{
	float p1=1,p2=1,p3=1;
	int i;
	for(i=1;i<=m;i++)
	p1*=i;
	for(i=1;i<=n;i++)
	p2*=i;
	for(i=1;i<=(m-n);i++)
	p3*=i;
	return p1/(p2*p3);
}

void main()   /* 主函数 */
{  void NONO ();
   printf("P=%f\n", fun (12,8));
   NONO();
}

void NONO ()
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
  FILE *fp, *wf ;
  int i, m, n ;
  float s;

  fp = fopen("in.dat","r") ;
  wf = fopen("out.dat","w") ;
  for(i = 0 ; i < 10 ; i++) {
    fscanf(fp, "%d,%d", &m, &n) ;
    s = fun(m, n) ;
    fprintf(wf, "%f\n", s) ;
  }
  fclose(fp) ;
  fclose(wf) ;
}

17

 使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,它的功能是:求小于形参n同时能被3与7整除的所有自然数之和的平方根,并作为函数值返回。
例如,若n为1000时,程序输出应为:s=153.909064。
注意:部分源程序在文件prog1.c中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

 

第 41 题

使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:找出形参s所指字符串中出现频率最高的字母(不区分大小写),并统计出其出现的次数。
例如,形参s所指的字符串为:abcAbsmaxless,程序执行后的输出结果为:
letter'a':3times
letter's':3times

#include  <stdio.h>
#include  <string.h>
#include  <ctype.h>
void fun(char  *s)
{ int  k[26]={0},n,i,max=0;    char  ch;
  while(*s)
  { if( isalpha(*s) ) {
/**********found**********/
      ch=tolower(*s);
      n=ch-'a';
/**********found**********/
      k[n]+=1 ; //把字母出现的个数加到指定的数组中 
    }
    s++;
/**********found**********/
    if(max<k[n]) max= k[n] ;
  }
  printf("\nAfter count :\n");
  for(i=0; i<26;i++)
     if (k[i]==max) printf("\nletter  \'%c\' :  %d times\n",i+'a',k[i]);
}
void main()
{ char  s[81];
  printf("\nEnter a string:\n\n");  gets(s);
  fun(s);
}

 终于终于做对大题了!!希望考试也能做出来

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2149045.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

中国光刻机突破28nm?进步巨大但前路漫漫

在近期的报道中&#xff0c;中国国产光刻机进入推广目录的消息引发了广泛关注&#xff0c;其中提到的一款氟化亚光刻机的分辨率达到了65nm&#xff0c;被视作具备28nm制程节点的生产能力。那么&#xff0c;国产光刻机真的已经突破了28nm制程节点了吗&#xff1f;本文将对相关技…

Mysql梳理6——order by排序

目录 6 order by排序 6.1 排序数据 6.2 单列排序 6.3 多行排列 6 order by排序 6.1 排序数据 使用ORDER BY字句排序 ASC&#xff08;ascend&#xff09;:升序DESC(descend):降序 ORDER BY子句在SELECT语句的结尾 6.2 单列排序 如果没有使用排序操作&#xff0c;默认…

第157天: 安全开发-Python 自动化挖掘项目SRC 目标FOFA 资产Web 爬虫解析库

案例一&#xff1a;Python-WEB 爬虫库&数据解析库 这里开发的内容不做过多描述&#xff0c;贴上自己写的代码 爬取数据 要爬取p标签&#xff0c;利用Beautyfulsoup模块 import requests,time from bs4 import BeautifulSoup#url"https://src.sjtu.edu.cn/rank/firm…

教你建设智慧数字乡村如何选供应商,如何落地项目

说到数字乡村建设&#xff0c;大家都有自己的思路和想法&#xff0c;那么如果现在让你来做这个项目你又如何来实施&#xff1f;都需要什么方式&#xff1f;都要具备什么条件&#xff1f; 下面我来说一下我的个人思路&#xff0c;要做数字乡村我觉得前提是必须满足几个条件&…

可视化工具Gephi安装要求和特点

Gephi是进行社会图谱数据可视化分析的工具&#xff0c;不但能处理大规模数据集并且Gephi是一个可视化的网络探索平台&#xff0c;用于构建动态的、分层的数据图表。 Gephi安装要求 ① gephi是一个可多平台使用的绘图软件&#xff0c;能在Windows&#xff0c;OS&#xff0c;Lin…

平价头戴式蓝牙耳机有哪些?四款公认平价性能超强品牌机型推荐

在追求高品质音乐体验的同时&#xff0c;许多消费者希望找到价格亲民的头戴式蓝牙耳机&#xff0c;市场上不乏性能卓越、价格实惠的产品&#xff0c;它们凭借出色的音质、舒适的佩戴体验和可靠的续航能力赢得了用户的青睐&#xff0c;那么在众多的头戴式蓝牙耳机内&#xff0c;…

英伟达:AI时代的领跑者,引领智能计算的未来@附149页PDF文件下载

在人工智能的浪潮中&#xff0c;英伟达&#xff08;NVIDIA&#xff09;以其卓越的GPU技术&#xff0c;成为了这个时代的领跑者。从游戏显卡的霸主到AI计算的领导者&#xff0c;英伟达的转型之路充满了创新与突破。今天&#xff0c;我们将深入探讨2024年英伟达如何通过其战略布局…

Python 中的异步编程:从入门到实践

在现代编程实践中&#xff0c;异步编程已经成为一个不可或缺的技能&#xff0c;尤其是在处理高并发和I/O密集型应用时。Python&#xff0c;作为一种动态、解释型的高级编程语言&#xff0c;提供了强大的异步编程支持&#xff0c;使得开发者能够有效地编写高效、可扩展的应用程序…

虹科技术 | Linux环境再升级:PLIN驱动程序正式发布

Linux驱动程序领域再添新成员&#xff0c;PLIN驱动程序现已正式发布。这一新驱动程序为使用LIN接口的用户提供了一个便捷、高效的解决方案。本文将展示如何安装PLIN驱动程序&#xff0c;以及如何在Linux环境下进行基本的PLIN通信操作&#xff0c;确保您能够快速掌握并应用这一新…

寄存器二分频电路

verilog代码 module div2_clk ( input clk, input rst,output clk_div);reg clk_div_r; assign clk_div clk_div_r;always(posedge clk) beginif(rst)beginclk_div_r < 1b0;endelsebeginclk_di…

射击靶标检测系统源码分享

射击靶标检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vis…

pytorch-AutoEncoders实战之VAE

目录 1. VAE回顾2. KL的计算公式3. 构建网络4. 模型训练 1. VAE回顾 VAE Variational Auto Encoder&#xff0c;变分自编码器。是一种常见的生成模型&#xff0c;属于无监督学习的范畴。它能够学习一个函数/模型&#xff0c;使得输出数据的分布尽可能的逼近原始数据分布&…

CCRC-CDO首席数据官:未成年人首次上网年龄持续降低

近日&#xff0c;中国社会科学院新闻与传播研究所联合社会科学文献出版社发布了《青少年蓝皮书&#xff1a;中国未成年人互联网运用报告(2024)》&#xff0c;该报告对中国未成年人的互联网使用情况进行了全面的研究和专项汇报。 调查数据透露&#xff0c;未成年人接触网络的年…

光耦选型 | 充电领域使用光耦型号推荐——晶体管光耦KL3H7

在充电领域&#xff0c;光耦作为一种常见的光电耦合器件&#xff0c;通常用于电气隔离、信号传输、电池保护和充电控制等方面。 电源气隔离&#xff1a;光耦可用于实现电源气隔离&#xff0c;将输入和输出电路进行隔离&#xff0c;提高系统的安全性和稳定性。 信号传输&#…

0基础也可以转行做产品经理吗?

转行成为产品经理&#xff0c;即使没有相关工作经验或技术背景&#xff0c;仍然是一个可行的目标。产品经理的职责多样&#xff0c;但成功的产品经理通常需要具备一系列的技能和素养&#xff0c;包括项目管理、市场分析、用户体验设计等。在没有相关经验的情况下&#xff0c;通…

动手学深度学习PyTorch 第 1 章 引言

在线电子书 深度学习介绍 安装 使用conda环境 conda create -n d2l-zh python3.8 pip安装需要的包 pip install jupyter d2l torch torchvision下载代码并执行 wget https://zh-v2.d2l.ai/d2l-zh.zip unzip d2l-zh.zip jupyter notebookpip install rise如果不想使用jupyt…

建筑企业有闲置资质怎么办?

在建筑行业中&#xff0c;企业可能会因为业务调整、市场变化或战略转型而拥有一些不再使用的资质。这些闲置的资质如果得不到合理处理&#xff0c;不仅会造成资源浪费&#xff0c;还可能影响企业的合规性。因此&#xff0c;建筑企业在面对闲置资质时&#xff0c;需要采取合适的…

《微信小程序实战(3) · 推广海报制作》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; CSDN入驻不久&#xff0c;希望大家多多支持&#xff0c;后续会继续提升文章质量&#xff0c;绝不滥竽充数…

C++ 9.19

练习&#xff1a;要求在堆区申请5个double类型的空间&#xff0c;用于存储5名学生的成绩。请自行封装函数完成 1> 空间的申请 2> 学生成绩的录入 3> 学生成绩的输出 4> 学生成绩进行降序排序 5> 释放申请的空间 主程序中用于测试上述函数 #include<ios…

选址模型 | 基于混沌模拟退火粒子群优化算法的电动汽车充电站选址与定容(Matlab)

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 基于混沌模拟退火粒子群优化算法的电动汽车充电站选址与定容&#xff08;Matlab&#xff09; 问题建模&#xff1a;首先&#xff0c;需要将电动汽车充电站选址与定容问题进行数学建模&#xff0c;确定目标函数和约束…