怎么用c语言编写程序:用户从键盘输入一行字符,分别统计其中的英文字母,空格,数字占字符总数的百分比

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么用c语言编写程序:用户从键盘输入一行字符,分别统计其中的英文字母,空格,数字占字符总数的百分比相关的知识,希望对你有一定的参考价值。

如题!

#include <stdio.h>
#include <ctype.h>

int main()

int digitnum = 0;
int alphanum = 0;
int spacenum = 0;
double totalnum = 0;
while(gc = getchar() != EOF)

if(isdigit(gc)) digitnum++;
else if(gc == ' ') spacenum++;
else if(isalpha(gc)) alphanum++;
totalnum++;

totalnum *= 0.01;
printf("Space: %lf%%, Digit: %lf%%, Alphabet: %lf%%", spacenum/totalnum, digitnum/totalnum, alphanum/totalnum);
return 0;


很多东西网上有现成的参考资料,建议多用用搜索引QING...

参考资料:http://zhidao.baidu.com/question/17441664.html?fr=qrl

参考技术A 楼上说的正确,这里给出表
ASCII码 键盘 ASCII 码 键盘 ASCII 码 键盘 ASCII 码 键盘
27 ESC 32 SPACE 33 ! 34 "
35 # 36 $ 37 % 38 &
39 ' 40 ( 41 ) 42 *
43 + 44 ' 45 - 46 .
47 / 48 0 49 1 50 2
51 3 52 4 53 5 54 6
55 7 56 8 57 9 58 :
59 ; 60 < 61 = 62 >
63 ? 64 @ 65 A 66 B
67 C 68 D 69 E 70 F
71 G 72 H 73 I 74 J
75 K 76 L 77 M 78 N
79 O 80 P 81 Q 82 R
83 S 84 T 85 U 86 V
87 W 88 X 89 Y 90 Z
91 [ 92 \ 93 ] 94 ^
95 _ 96 ` 97 a 98 b
99 c 100 d 101 e 102 f
103 g 104 h 105 i 106 j
107 k 108 l 109 m 110 n
111 o 112 p 113 q 114 r
115 s 116 t 117 u 118 v
119 w 120 x 121 y 122 z
123 124 | 125 126 ~

参考资料:http://www.qucha.net/main/tools/asc.htm

参考技术B 通过字符ASCII 码来识别就行

例如数字0-9对应 ASCII码是 48-57

具体其他的可以在madn里查到,或者你在goole或baidu里查"字符ASCII " 也可以查到

用C语言编写一个程序: 从键盘输入 10 个整数,求出其中的最大值。

程序:

#include<stdio.h>

int main()


int arr[10] = 0;

int i = 0;

int max = 0;

int min = 0;

printf("请输入10个整数:");

for (i = 0; i < sizeof(arr)/ sizeof(arr[0]); i++)


scanf("%d",&arr[i]);


max = arr[0];

for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)


if (max < arr[i])


max = arr[i];



min = arr[0];

for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)


if (min > arr[i])


min = arr[i];



printf("max=%d\\n", max);

printf("min=%d\\n", min);

return 0;


结果:

请输入10个整数:1 2 3 56 23 6 767 32 11 567

max=767

min=1

请按任意键继续. . .

扩展资料:

编写过程分为三部分:源代码文件 ------> 目标代码文件------>可执行文件。

用到两个组件:编译器、链接器。编译器的作用是将源代码转换为中间代码,产生中间文件。链接器将此中间代码与其他代码相结合来生成可执行文件。

中间文件的形式有多种,一般就是将源代码文件转换为机器语言代码,将其结果放置在一个目标代码文件中。虽然目标代码文件包含机器代码文件,但是该文件还不能运行。目标文件包含源代码的转换结果,但它还不是一个完整的程序,也就是不是一个完整的可执行文件,它还需要与一些基本元素。

目标代码文件中所缺少的第一个元素是一种叫做启动代码的东西,这个代码相当于程序跟操作系统之间的接口。所缺少的第二个元素是库例程的代码,几乎所有c程序都利用标准c库中所包含的例程,例如printf。

而链接器的作用就是将这三部分结合在一起,并将它们存放在单个文件,即可执行文件中,这样,一个完整的可执行文件就产生了。

参考技术A #include <stdio.h>
#include <stdlib.h>

int main()

int x, result, i;    //x用来存储新读入的数字,result来存储当前最大值

//先读入一个数字
scanf("%d", &x);
//此时只有一个数字,最大值就是该整数
result = x;

//接下来循环读入剩下九个数字
//每次读入新数字后,根据情况更新最大值
for(i=0;i<9;i++)

scanf("%d", &x);
result = result>x ? result : x;


//打印结果
printf("%d\\n", result);


return 0;

请采纳。

参考技术B # include<stdio.h>
void insertsort(int num[],int n)

int i,j;
for(i=0; i<n;i++)

 for(j=i+1;j<=n;j++)
 
 if(num[i]>num[j])
 
 int temp=0;
 temp=num[i];
 num[i]=num[j];
 num[j]=temp;
 
 


void main() 

int num[10];
    int n=10;
    for(int i=0;i<10;i++)
      scanf("%d",&num[i]); 
       insertsort(num,n);
   printf("最小数为:");
       printf("%3d",num[0]);
       printf("\\n");
   printf("最大数为:");
       printf("%3d",num[9]);

参考技术C #include<stdio.h>

int main()

int num;
int right = 0;
int max = 0;
puts("请输入10个整数:");
while (right <10)

if(scanf("%d", &num) == 1)
right++;
else

puts("请输入整数。");
while(getchar() != '\n')
continue;

if (num > max)
max = num;

printf("最大值是:%d\n", max);
getchar();
return 0;

参考技术D #include<stdio.h>
void main()
int num[10],i,j,temp;
for(i=0;i<10;i++)
printf("请输入第%d个数:");
scanf("%d",&num[i]);

for(i=0;i<10;i++)
for(j=0;j<9-i;j++)
if(num[j]<num[j+1])
temp=num[j];
num[j]=num[j+1];
num[j+1]=temp;



printf("这10个数的最大值是:%d",num[0]);

以上是关于怎么用c语言编写程序:用户从键盘输入一行字符,分别统计其中的英文字母,空格,数字占字符总数的百分比的主要内容,如果未能解决你的问题,请参考以下文章

请教几道C语言编程题,急用

1. 用C语言写一段程序:从键盘上输入两数,判断其大小关系,将判断结果显示在屏幕上。

在C语言中getchar()如何用

这个C语言程序怎么用

用JAVA怎么编写以下两个程序:?!

统计不同字符个数。用户从键盘输入一行字符,编写一个程序,统计并输出其中英文字符数字空格和其他字符的个数