错误: 元素值必须为常量表达式_C语言编程常见错误集锦 【下】

bd4c21ee532111d59e5e2550c392f12c.gif

1、输入数据时,规定精度

91d3f73854aa60f3d6de621596cafd38.png

输入数据时不能规定精度。

2、switch语句中漏写break语句

585abb8ca168ac5a3ee4bb25e42dd419.png

由于漏写了break语句,case只起标识的作用,而不起判断的作用。当grade的值为A时,程序会从上到下执行完,五个printf都输出。

正确的写法应为:

321d83fbb9c11d2b198243e52107c385.png

3、忽视while和do-while语句区别

while语句

a7b548185bf3ed62a90f1b54096a70c1.png

do-while语句

3782893c6d85194371143c9a0411950e.png

当输入的i值小于等于10时,两者输出结果无区别。当输入的i大于10时,while语句不执行循环体,do-while语句执行一次循环题。因为while语句先判断后执行,do-while语句先执行后判断。

4、忽略自增(自减)运算符的细节

【第一个区别】

i++ 返回原来的值,++i 返回加1后的值

02695a5c917c48d176068e78ae56eef9.png

输出结果: a=i+1  b=i。因为a=++i;是先把i加1再赋值给a,可以把此句分解为:i=i+1;a=i;;b=i++; 是先把i赋值给b再加1。

可分解为:b=i;i=i+1;

【第二个区别】

i++ 不能作为左值,而++i 可以

左值是对应内存中有确定存储地址的对象的表达式的值,而右值是所有不是左值的表达式的值。

75d2fcad8858367f55f38dee663c3ec9.png

5、忽略sizeof()和strlen()的区别

cc276b2433fd9695984e56b43290f7e6.png

6、定义数组时,将定义的“元素个数”误认为是可使用的最大下标

f528122d3d9f4a4d36b93a61dcd0af57.png

C语言中,定义时用a[5],表示a数组中有5个元素。其下标是从0开始的,数组中最后一个元素是a[4],不存在a[5]。

7、定义数组时误用变量

37080611c10969a2798a72ca78e834de.png

数组名后用方括号括起来的是常量表达式,可以包括常量和符号常量。即C不允许对数组大小作动态定义。

8、地址运算符&使用错误

dcd167c952bbb2556b6c48f713fd6fd9.png

C中,数组名代表地址

正确的应为:

0dc528866262e8da8057c0044f8914e7.png

9、同时定义了形参和函数中的局部变量

f51acacc5fdb1e15ead8afe8e60919e5.png

形参应在函数体外定义,而局部变量应在函数体内定义。

正确的应为:

2de8832c88ebf5b65bb956f52940098c.png

e8c7374e534aeb9165f1334df36ea105.png—END—

Dotcpp题解接受大家发表各大OJ的题解
重点用户还会有礼品相送~
欢迎搜索c语言网:https://www.dotcpp.com/

8bca7fbbe7effad581478f604943f6c9.png8194c891744f9b374b8e4e745836a204.gif

编程范

教你最实用的编程方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/261310.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

asp.net上传文件时提示,不支持给定路径的格式解决方法

asp.net的上传图片,在部分浏览器中,提示”不支持给定路径的格式” 。该问题是由于浏览器的有些设置会把图片的本地完整路径发送到服务器端,而服务器端在写代码的时候,却是按单独的文件名来处理的,所以就导致错误。解决…

Hadoop概述

为什么80%的码农都做不了架构师?>>> 一:Hadoop的相关概念 1、Hadoop是一个基于java语言的MapReduce框架。 2、Hadoop的改进: a、Hadoop Streaming--任何命令行脚本都可以通过Streaming调用MapReduce框架。 b、Hadoop Hive&#xf…

mysql connection是什么_记一次MySQL出现too many connection

今天中午的时候突然接到报警,MySQL连接数暴增..本来设置的max_conntion6000, 这个数值连接已经够用.接到报警速度连接服务器连接mysql总是报如下错误:[mysqllocalhost ~]$ mysql -u xxxxx -pxxxxxxxxERROR 1040 (HY000): Too many connections本来打算kill杀掉重启搞定解决..但…

WHU 1470 Join in tasks 水题

http://acm.whu.edu.cn/land/problem/detail?problem_id1470 大概是给你一个队列,每次移动队头的数到队尾并减1,如果本身这个数为1就删去. 然后ans 这个数 * (队列长度-1),求最小的ans 只要最小的元素最先删除就能保证结果最小 解法: 先对原数列排序 然后模拟原操作 ...但是…

WebGL起步

本系列文章翻译自:https://developer.mozilla.org/en/WebGL 本文地址:https://developer.mozilla.org/en/WebGL/Getting_started_with_WebGL 翻译说明:水平有限并且不会逐字逐句翻译,只保证符合原文意思。 对于支持WebGL的浏览器来…

神奇的expect

想写自动化脚本的时候,遇到需要交互的,如ssh,scp,就束手无策,直到我知道了expect。 expect 有一系列expect-send对组成,就像聊天一样。 expect A send B expect C send D 先来个例子 #!/usr/bin/expect se…

mysql explain语句_Mysql explain 语句详解

explain 语句详解explain 写在 select 前,如下mysql> explain select * from user_info where id 2\G*************************** 1. row ***************************id: 1select_type: SIMPLEtable: user_infopartitions: NULLtype: constpossible_keys: PRI…

TF-IDF理解及其Java实现

TF-IDF 前言 前段时间,又具体看了自己以前整理的TF-IDF,这里把它发布在博客上,知识就是需要不断的重复的,否则就感觉生疏了。 TF-IDF理解 TF-IDF(term frequency–inverse document frequency)是一种用于资…

结合file和iconv命令转换文件的字符编码类型

http://hi.baidu.com/netwrom/blog/item/8885f31ef0d09ae7e1fe0b1c.html在很多类unix平台上都有一个iconv工具,可以用来转换字符编码;而对于普通的文本文件,file命令可以用来检测某个文件的字符编码类型,结合两者就可以非常方便地…

PostgreSQL 9.2迁移到9.3

Netkiller PostgreSQL 手札 Mr. Neo Chan, 陈景峰(BG7NYT) 中国广东省深圳市龙华新区民治街道溪山美地51813186 1311366889086 755 29812080<netkillermsn.com> 文档始创于2012-11-16 版权 © 2010, 2011, 2012, 2013 Netkiller(Neo Chan). All rights reserved. 版…

mysql no listenter_为什么mysql中用\G表示按列方式显示

关于mysql的错误 - no query specified学习了&#xff1a;http://blog.csdn.net/tenfyguo/article/details/7566941sql语句可以用分号或者\G来结尾&#xff1b;出现这个错误一般是分号多写了&#xff1b;学习了&#xff1a;http://blog.csdn.net/guoqianqian5812/article/detai…

C#原型模式之深复制实现

SYSTEM空间有ICONEALBE接口。。。因为其太常用。 1 /*2 * Created by SharpDevelop.3 * User: home4 * Date: 2013/4/215 * Time: 22:206 * 7 * To change this template use Tools | Options | Coding | Edit Standard Headers.8 */9 using System;10 11 namespace Res…

old header

海纳百川 山不拒土 No Backspace in Real Life. Love Life!【Cloud】【LBS】【GIS】【GPS】【MAPS】【C】【Java】转载于:https://www.cnblogs.com/yqskj/p/3293340.html

python flask框架教程_Flask框架从入门到实战

Flask简介&#xff1a;Flask是一个使用 Python 编写的轻量级 Web 应用框架&#xff0c;基于 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授权。Flask也被称为 “microframework” &#xff0c;因为它使用简单的核心&#xff0c;用 extension 增加其他功能。Flask没有默认使…

js 中英文字符串长度

<script language"javascript"> //判断中英文&#xff1a; function isChinese(str) { var lst /[u00-uFF]/; return !lst.test(str); } if(isChinese("名字")) alert("Yes"); else alert("NO"); </script>…

【COCOS CREATOR 系列教程之二】脚本开发篇事件监听、常用函数等示例整合

本站文章均为 李华明Himi 原创,转载务必在明显处注明&#xff1a; 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/cocos-creator/1959.html【Cocos Creator 】(千人群):432818031 上一篇&#xff0c;介绍了Himi在使用过cc所有组件后的一篇总结&#xff0c;没有…

iphone开发中数据持久化之——属性列表序列化(一)

数据持久化是应用程序开发过程中的一个基本问题&#xff0c;对应用程序中的数据进行持久化存储&#xff0c;有多重不同的形式。本系列文章将介绍在iphone开发过程中数据持久化的三种主要形式&#xff0c;分别是属性列表序列号、对象归档化以及iphone的嵌入式关系数据库SQLite。…

python多个变量与字符串判断_python怎么判断变量是否为字符串

在python中怎么连接变量和字符串&#xff1f;我真的懂你不是喜新厌旧只是我没能在你寂寞的时候伴你左右假设你的变量也是str类型 直接用号就可以a"test"connecta"teststr"也可以使用%s connect"%s teststr"%a Python是一种面向对象、直译式计算机…

对话jQuery之父John Resig:JavaScript的开发之路

在参加完CSDN组织的TUP对话大师系列演讲活动后&#xff0c;27岁的jQuery之父John Resig接受了本刊总编刘江的深度访谈&#xff0c;这篇对话文章&#xff0c;让我们一窥这位著名程序员的人生及技术感悟。 编程初体验 《程序员》&#xff1a;你是如何开始编程的&#xff1f; John…

互联网产品研发的典型流程

这张图是互联网产品研发的一种最佳实践&#xff0c;这张图中没有包含异常流的处理。通常异常出现在进入开发甚至测试阶段了还在变更需求&#xff0c;进入封版发版阶段了还在修改代码&#xff0c;所以在这两个时间点都有需求冻结和代码冻结。 转载于:https://www.cnblogs.com/mo…