完成對輸入的字串中C關鍵詞的查找統計,
程式運行示例如下:
本程式將為您統計C語言的關鍵字的個數,請輸入,輸入end結束輸入:
if do while while do break goto helloworld end
您的輸入中C語言關鍵字出現的次數統計如下:
break : 1
do : 2
goto : 1
if : 1
while : 2
輸入格式:
“本程式將為您統計C語言的關鍵字的個數,請輸入,輸入end結束輸入:\n”
(既可以以空格分隔單詞,也可以以回車分隔單詞)
輸出格式:
“您的輸入中C語言關鍵字出現的次數統計如下:\n”
“%-10s: %6d\n”
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
#define MAX 32
struct Count
{
char* name;
int count;
};
int main()
{
char s[10] = { 0 };
struct Count arr[MAX] = {
"auto", 0,
"break",0,
"case",0,
"char",0,
"const", 0,
"continue",0,
"default",0,
"do", 0,
"double",0,
"else",0,
"enum",0,
"float",0,
"for",0,
"goto",0,
"if",0,
"int",0,
"long",0,
"register",0,
"while", 0,
"reuturn",0,
"short",0,
"signed",0,
"sizeof",0,
"static", 0,
"struct",0,
"switch",0,
"typedef",0,
"union",0,
"unsigned",0,
"void", 0 ,
"volatile",0,
"while", 0,
};
int i;
printf("本程式將為您統計C語言的關鍵字的個數,請輸入,輸入end結束輸入:\n");
while (strcmp(s, "end") != 0)
{
scanf("%s", s);
for (i = 0; i < MAX-1; i++)
{
if (strcmp(s, arr[i].name) == 0) // strcmp--字串比較函式,如果兩個字串相等,回傳值為0
{
arr[i].count++;
}
}
}
printf("您的輸入中C語言關鍵字出現的次數統計如下:\n");
for (i = 0; i < MAX-1; i++)
{
if (arr[i].count != 0)
{
printf("%-10s: %6d\n", arr[i].name, arr[i].count);
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/257718.html
標籤:其他
