字符统计-在产生布尔类型的表达式中对‘c’赋值如何解决

问题描述

在产生布尔类型的表达式中对‘c’赋值如何解决
/* 2、单词计数函数功能:统计输入的单词,然后输出,输出格式:X行,X单词,X个字符(字符包括输入
的换行符) */

#include
#include ""head.h""

Int32_t main(
Int32_t argc
const Int32_t* argv[]
)

{
Int32_t numline = 1numword = 1numchar = 0c = 0;

[b] while ((c = getchar()) != '.') [/b][color=#FF0000][/color] /* 结束标志的实现 /
{
++numchar;
if (c == 'n') /
判断是不是换行 /
{
numline = numline + 1;
}
if ((c == ' ')||(c == 'n' )||(c == 't' )) /
判断是否有空格计算词的个数 */
{
numword = numword + 1;
}
}
printf(""character = %dnlines = %dnwords = %dn""numchar numline numword);

return 0;

}

这个怎么把红色的 while ((c = getchar()) != '.') 替换掉 且不发生功能上的改变 通过MISRA C 规则检查会出现 在产生布尔类型的表达式中对‘c’赋值

解决方案

while(c=getchar() c!='.')

解决方案二:
for(c=getchar(); c!='.'; c=getchar())

时间: 2024-12-21 23:34:58

字符统计-在产生布尔类型的表达式中对‘c’赋值如何解决的相关文章

select-在应使用条件的上下文(在 ';' 附近)中指定了非布尔类型的表达式。这个问题如何解决?

问题描述 在应使用条件的上下文(在 ';' 附近)中指定了非布尔类型的表达式.这个问题如何解决? 行 46: string sqlstr = "select Place=(SELECT COUNT(DISTINCT totalScore) FROM T_TestMark WHERE a.totalScore >= a.totalScore) as 名次,b.userID as 用户名, a.totalScore as 成绩 FROM T_TestMark AS a INNER JOIN T

select- 在应使用条件的上下文(在 'then' 附近)中指定了非布尔类型的表达式。

问题描述 在应使用条件的上下文(在 'then' 附近)中指定了非布尔类型的表达式. 消息 4145,级别 15,状态 1,第 2 行 在应使用条件的上下文(在 'then' 附近)中指定了非布尔类型的表达式. select case when (ABS (Ultra_oil) > 100 ) and (Ultra_oil > 0 )then 80+(Ultra_oil-100)*1 when (-(80+(ABS(Ultra_oil)-100)*1)) then Ultra_oil*0.8

Java的布尔类型基本介绍_java

Java 有一种表示逻辑值的简单类型,称为布尔型.它的值只能是真或假这两个值中的一个.它是所有的诸如a下面的程序说明了布尔类型的使用: // Demonstrate boolean values. class BoolTest { public static void main(String args[]) { boolean b; b = false; System.out.println("b is " + b); b = true; System.out.println(&quo

字符-jdk1.5 String类型的表达式 计算结果转换成Int

问题描述 jdk1.5 String类型的表达式 计算结果转换成Int String str = "3*5+5"; JDK1.5 有没有什么函数可以计算str然后放入int? 还是得字符截取一步一步来? 感谢各位大神的回复.不能全部采纳实属无奈.所以从逻辑严谨的角度,采纳同时回答两个问题的回复.再次感谢 解决方案 没有,自己看一下后缀表达式算法,参考下面链接http://www.cnblogs.com/gmq/archive/2013/05/30/3108849.html 解决方案二:

Go语言基础知识总结(语法、变量、数值类型、表达式、控制结构等)_Golang

一.语法结构 golang源码采用UTF-8编码.空格包括:空白,tab,换行,回车. - 标识符由字母和数字组成(外加'_'),字母和数字都是Unicode编码. - 注释: 复制代码 代码如下: /* This is a comment; no nesting */ // So is this. 二.字面值(literals)类似C语言中的字面值,但数值不需要符号以及大小标志: 复制代码 代码如下: 23 0x0FF 1.234e7类似C中的字符串,但字符串是Unicode/UTF-8编码的

[从C到C++] 1.3 C++布尔类型(bool)

布尔类型(bool)是C++新增的一种基本数据类型.在标准的C语言中并未定义bool类型,如果需要使用bool类型,程序员可以通过宏定义来自定义一个bool类型,定义语句如下: #define bool int #define false 0 #define true 1 也就是将int型定义为bool型,将int型的0和1两个值分别定义为bool类型的两个值true和false. 但是在C++中则不需要这么麻烦,C++中对bool类型已经做出了定义. bool类型是C++语言基本数据结构之一,

C#的布尔类型

布尔类型是用来表示"真"和"假"这两个概念的.这虽然看起来很简单,但实际应用非常广泛.我们都知道,计算机实际上就是用二进制来表示各种数据的,即不管何种数据,在计算机内部都是采用二进制方式处理和存储的.布尔类型表示的逻辑变量只有两种取值:"真"和"假".在C#中,分别采用true和false两个值来表示. 注意:在C和C++中,用0来表示"假",其它任何非0的式子都表示"真".这种不正规的

Delphi中的布尔类型

Delphi中预定义的布尔类型有四种:Boolean ,ByteBool,WordBool,LongBool.其中,Boolean 类型是首选布尔类型,其余三种是为其它编程语言和Windows 环境提供兼容性支持.这些布尔类型在使用上大同小异,但如果混淆使用将可能会有意外结果. 现做简单辨析供大家参考. 一.从资源占用的角度进行比较 一项Boolean 类型的数据占用 1字节的内存: 一项ByteBool类型的数据占用 1字节的内存: 一项WordBool类型的数据占用 2字节的内存: 一项Lo

do while-在do-while循环语句中关于定义,判断布尔类型的问题

问题描述 在do-while循环语句中关于定义,判断布尔类型的问题 当定义boolean flag=false或者boolean flag=true时,该程序的运行结果是一样的.while(flag)或者while(!flag)与定义的flag没有关系吗?while(flag)的含义永远是falg=true时继续,而while(!flag)的含义永远是!falg=true时继续吗? public class Test { public static void main(String[]args)