您的位置:

c语言数量代码,c语言数量代码是什么

本文目录一览:

C语言实现统计文本文件中,26个英文字母的分别的数量,及其他字符的数量。

#include stdio.h

#include stdlib.h

#include string.h

int count[27] ; //0-25代表a-z,26代表其它字符

char s[1001] ;

int main()

{

int i ;

FILE *fp ;

fp = fopen("自己给出路径名","r") ;

while( fgets(s,1000,fp) ) {

for( i = 0 ; s[i] ; i ++ ) {

if( s[i] 'A' || s[i] 'z' || ( s[i] 'Z' s[i] 'a' ) ) //证明是其它字符

count[26] ++ ;

else if( s[i] 'a' ) //大写字符

count[s[i] - 'A' ] ++ ;

else

count[s[i] - 'a'] ++ ;

}

}

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

printf("%c 或者 %c:%d次\n", 'A' + i , 'a' + i , count[i]);

}

printf("其他字符:%d次\n",count[26]);

return 0 ;

}

C语言代码 统计从键盘输入的字符串中各个字母数目

#includestdio.h

#includestring.h

struct letter{

char zimu ;

int n;

};

int main()

{

char word[200];

int l,i,k,t,ZIMU=0;

struct letter let[26],temp;

gets(word);

l=strlen(word);

for(k=0;k26;k++) 

{let[k].n=0;

for(i=0;il;i++)

if(word[i]=='a'+k||word[i]=='a'+k-32)

{let[k].zimu='a'+k;

let[k].n++;}      //依次统计各个字母个数

if(let[k].n!=0)ZIMU++;//ZIMU记录出现的字母种类数 

}

for(i=0;i26;i++)

{

if(let[i].n==0)

{

for(k=i+1;k26;k++)

{

if(let[k].n!=0)

{

let[i]=let[k];

let[k].n=0;break;

}

}

}

}//整合结构数组,剔除零项 

for(i=0;iZIMU-1;i++)

{

for(k=i+1;kZIMU;k++)

if(let[i].nlet[k].n)

{

temp=let[i];

    let[i]=let[k];

    let[k]=temp;

}

}                  //排序

 

for(i=0;iZIMU;i++)printf("%c  %d\n",let[i].zimu,let[i].n);

return 0;

}

朋友,你的代码里有两处错误:首先你没有整合掉数目为零的字母项,导致后面排序时数据丢失;另外,你的排序算法也有问题,我看后觉得你是想用冒泡算法,但是用得不对,建议将经典算法的代码记下来,用得时候就好办了。(我这个新手的一点拙见,我自己的检验都通过了,但是不知道是否完全正确,希望多多交流,共同进步)

跪求c语言计数代码

#include "stdio.h"

#include "stdlib.h"

void main()

{

FILE *fp;

char ch;

int charCounts=0,numCounts=0,numSum=0;

if((fp=fopen("test.txt","r"))==0)//注意,由于不知道想打开的文件的位置和名称,随意写的一个文件名,自己要按文件的路径和名称做修改

{

printf("文件读取失败!\n");

exit(0);

}

while((ch=fgetc(fp))!=EOF)

{

if(ch='0'ch='9')

numCounts++;

else

charCounts++;

}

numSum=numCounts+charCounts;

printf("该文件中数字字符共有%d个,除数字这外的其它字符共有%d个,总计字符数%d。\n",numCounts,charCounts,numSum);

fclose(fp);

}

c语言 求最大数 简单代码

#include stdio.h

int main(void)

{

int max = 0;

while(1) {

int num = 0;

printf("请输入数据:\n");

scanf("%d", num);

if (num == 0) break;

max = num max ? num : max;

}

printf("%d is the largest one.\n", max);

return 0;

}

C语言解答 求代码

#includestdio.h

#define N 2000000

#define M 10000

int f[N]= {0};

int b[M]= {0};

int main()

{

int n,x;

int m;

scanf("%d",n);

for(int i=0; in; i++){

scanf("%d",x);//所有的提交过的人的编号

f[x]++;//出现过的编号标记

}

scanf("%d",m);

for(int i=0; im; i++) {/*抽取这m个人的编号,其中某个人在数组a中出现过,就输出Yes,否则输出No*/

scanf("%d",b[i]);

}

for(int i=0; im; i++)

{

int t=b[i];

if(f[t]!=0)//判断;

printf("Yes\n");

else

printf("No\n");

}

return 0;

}