编写一个程序,该程序读取输入直到遇到#字符,然后报告读取的空格数目、读取的换行符数目以及读取 的所有其他字符数目。

C Primer Plus
p214.
7.12(3)
#include<stdio.h>
void main(){
int o,j,x,p;//o是偶数个数,j是奇数个数,x是输入数字,p是判定数字。
double sum1,sum2,av1,av2;
o=j=sum1=sum2=av1=av2=0;
scanf("%d",&x);
while(x!=0)
{
p=x%2;
switch(p){
case 0:
{ o++;
sum1=sum1+x;
av1=sum1/o;
break;
}
case 1:{
j++;
sum2=sum2+x;
av2=sum2/j;
break;
}
default:break;}
scanf("%d",&x);
}
printf(“偶数的个数是%d 平均数:%.2f\n奇数的个数是%d 平均数:%.2f”,o,av1,j,av2);
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用一个while循环来读取用户输入字符,直到遇到#字符为止。在循环中,可以使用getchar()函数来读取每个字符,并且根据字符的类型进行相应的计数。例如,如果读取空格字符,则空格计数器加1;如果读取换行符,则换行符计数器加1;否则,其他字符计数器加1。最后输出三个计数器的值即可。 示例代码如下: ``` #include <stdio.h> int main() { int space_count = ; // 空格计数器 int newline_count = ; // 换行符计数器 int other_count = ; // 其他字符计数器 char ch; // 存储读取字符 printf("请输入一段文本,以#字符结束:\n"); while ((ch = getchar()) != '#') { if (ch == ' ') { space_count++; } else if (ch == '\n') { newline_count++; } else { other_count++; } } printf("空格数目:%d\n", space_count); printf("换行符数目:%d\n", newline_count); printf("其他字符数目:%d\n", other_count); return ; } ``` ### 回答2: 回车键,并将输入字符串打印出来。 在许多编程语言中,我们可以使用“键盘输入”来与用户交互。在处理输入过程中,我们通常需要将用户输入的字串作为程序输入数据之一处理。当用户输入完成后,我们会使用特定的按键来告诉程序输入结束,此时程序会开始根据用户输入字符串来进行后续的逻辑处理。 对于许多语言,处理输入字符串通常会涉及到以下几个关键步骤: 1. 从键盘读取输入 在大多数语言中,我们可以使用特定的函数或工具来读取用户的输入。比如在Java中,我们可以使用Scanner类来实现读取用户的输入,同时在Python中,我们可以使用input()函数来进行读取。无论是哪种语言,在读取输入的过程中,我们通常会将用户输入保存到一个字符串变量中。 2. 直到遇到回车键 读取用户输入之后,我们通常会使用一个循环来不断地等待用户继续输入,直到用户停止输入。在这个过程中,我们需要判断用户输入字符串是否包含回车键。如果没有包含回车键,我们就可以继续等待用户继续输入。如果包含回车键,我们就可以跳出输入循环。 3. 打印输入字符串 如果用户输入字符串中包含回车键,我们就可以将其保存到一个字符串变量中,并输出到屏幕上。这样,我们就可以在屏幕上看到用户输入的完整字符串。在输出完整字符串之后,我们也可以使用该字符串来进行后续的逻辑处理。 总体来说,从键盘读取用户输入的过程可能会略微复杂,但只要掌握了上述关键步骤,我们就可以在各种编程语言中实现这一功能。在实际使用过程中,我们也可以将这个功能嵌入到更大的程序中,以实现更复杂的功能需求。 ### 回答3: 回车键为止的过程是怎样的? 从键盘读取用户输入直到遇到回车键为止的过程是一个典型的输入流程。首先,在计算机中,键盘被视为一个输入设备,可以通过计算机内部的输入控制芯片来控制其输入过程。当用户在键盘上输入信息时,键盘将按键事件发送给计算机中的输入控制芯片,然后将输入的数据传递到计算机中的缓冲区。在输入缓冲区中,用户输入的每个字符都被转换成相应的ASCII码,然后按照顺序排列到缓冲区中。 当用户输入完毕,按下回车键时,计算机会将回车键的按键事件发送到缓冲区中,以表示输入完成。此时,程序可以读取输入缓冲区中的输入数据并进行处理。具体地说,程序可以首先检测缓冲区中是否有数据输入。如果有输入数据,则可以将输入的数据读取程序中的缓冲区进行处理。如果没有输入数据,则程序可以等待用户输入。 接着,程序会扫描输入缓冲区中的数据,直到遇到回车键。在扫描过程中,程序可以同时进行输入验证和处理,如检查输入是否合法,将输入转换成所需的格式等。最后,当扫描到回车键时,程序会停止读取输入,将输入缓冲区中的数据传递给程序的相关功能模块进行处理,并将缓冲区中的数据清空,以便下一次输入操作。 总的来说,从键盘读取用户输入直到遇到回车键为止,是一个非常常见的输入流程。该过程需要按照顺序进行多个步骤,包括输入控制芯片,输入缓冲区,输入检验和处理,以及回车键的检测和处理等。程序员可以针对不同的输入情况,选择不同的输入流程,并在实现过程中进行适当的优化和调整,以提高程序性能和用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值