⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stata_z.cpp

📁 c语言教程源码
💻 CPP
字号:
//这个程序在本书所带软盘中。文件名为STATA_Z.CPP
//这个程序统计文本文件中各字母出现的次数。

#include <iostream.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>

#define size 81

void main(void)
{
	void initial(int*);				//定义对统计数组初始化子程序
	void stata_z(char*, int, int*);	//定义统计字母出现次数的子程序
	void output(int*);				//定义输出结果子程序

	char text[size];
	int count[26];

	initial(count);					//调用统计数组初始化子程序

	while (gets(text) != NULL)
		stata_z(text, strlen(text), count);	//调用统计子程序

	output(count);					//调用输出子程序
}

/*************子程序initial()***********************/
void initial(int *letter)
{
	for (int i = 0; i < 26; i++)
		*(letter+i) = 0;
}

/************子程序stata_z()************************/
void stata_z(char *array, int len, int *letter)
{
	char ch;
	int sub;

	for (int i = 0; i < len; i++) {
		ch = toupper(*(array+i));	//如果这个字符是字母,将它转换成大写
		if(ch >= 'A' && ch <= 'Z') {//这个字符是字母
			sub = (int)ch-65;		//将字母的ASCII值减65,转换成0到26的下标值
			letter[sub] += 1;
		}
	}
}

/***********子程序output()****************************/
void output(int *letter)
{
	puts("统计结果为:");

	for (int i = 0; i < 26; i++)
		cout << (char)(i+65) << ", or" << (char)(i+97) << " : " 
			 << *(letter+i) << endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -