首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
audio
yaml
vbscript
actionscrip
timezone
erlang
express
hashset
copy
object
main
int
httprequest
jar
stream
cookie
filter
random
metadata
substring
keyword
foreach
post
solr
merge
nodejs
runtime
bash
tree
cSharp
js
utf-8
rsa
input
replace
ip
case
fetch
php5
less
emoji
lua
netty
config
triggers
eval
window
schema
sum
python2
cpython
export
ascii
node.js
datetime
md5
go
text
install
settings
python3
usb
regex
format
join
cmd
select
hash
dockerfile
php
uri
split
vba
instance
typescript
php8
golang
bytecode
perl
当前位置:
开发笔记
>
编程语言
> 正文
printf的前后问题
作者:tianziqizhi | 来源:互联网 | 2023-10-16 13:33
我举个例子,C代码如下:#include<stdio.h>main(){charx;printf(本程序功能:任意输入一个字符,如果是字母字符,将其ASCII
我举个例子,C代码如下:
#include
main()
{
char x;
printf("本程序功能:任意输入一个字符,如果是字母字符,将其ASCII码值加5,使其在字母字符“a-z”之间变换并输出。例如字母“a”变成“f”,字母“z”变成“e”;");
printf("如果是数字字符,则将其ASCII码值减2,使其在数值“0-9”之间变换并输出。例如字符“9”变成字符“7”,字符“1”变成字符“9”。\n\n\n");
printf("请任意输入一个数字或字母字符:");
scanf("%c",&x);
if(x>='a'&&x<='z')
{
if(x>'u')
{
x=x-21;
printf("%c\n",x);
}
else
printf("%c\n",x+5);
}
else
if(x>='0'&&x<='9')
{
if(x<'2')
{
x=x+8;
printf("%c\n",x);
}
else
printf("%c\n",x-2);
}
}
你看红色部分两条说明这个程序功能的printf语句,像上面那样没错,可以运行。但是如果我把那两条printf语句放到char x;语句之前,也就是放在程序的一开始,那么这个程序就不对了,会报错,而且错误还不少,报的错都是有关于x的。
我想问的是问什么不能把这个printf语句放在最前面,而非要放在声明x之后???
10 个解决方案
#1
再补充一下,我用的是vc++2008速成版编写的。
#2
难道你的C标准还是很老的,只能接受把 变量定义在程序开头处。
#3
编译器的问题。
变量先要进行声明。
#4
确实是编译器的问题
#5
先定义变量了。
#6
我用的是vc++2008速成版,难道它里面的C编译器不行。
我在改文件属性时,改成编译为C代码,后面还有个括号标注了TC,难道他用的是TC编译器?
#7
C要求变量申明应该在{}中的所有执行语句的前面
C++可以随用随定义
#8
呵呵,微软的编译器对于*.C文件始终不支持随处定义变量的特性,必须在函数体最上面定义。
我倒觉得这是个比较好的编程习惯,这个函数会用到哪些变量一目了然。
不足就是,就算只想在循环中使用变量i,也不能用for(int i=0; i<10; i++){}
#9
引用 2 楼 wesleyluo 的回复:
难道你的C标准还是很老的,只能接受把 变量定义在程序开头处。
难道现在的C标准已经改了?
#10
引用 9 楼 nbda1121440 的回复:
引用 2 楼 wesleyluo 的回复:
难道你的C标准还是很老的,只能接受把 变量定义在程序开头处。
难道现在的C标准已经改了?
看看C99标准。
int
include
io
main
char
ascii
编译
文件
编程
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
int
UNP 第9章:主机名与地址转换
本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ...
[详细]
蜡笔小新 2024-12-27 11:26:39
bash
网络链路质量监控:Smokeping部署与配置
本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ...
[详细]
蜡笔小新 2024-12-27 19:31:05
runtime
从 .NET 转 Java 的自学之路:IO 流基础篇
本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ...
[详细]
蜡笔小新 2024-12-26 17:37:25
int
C++ 中的数组与动态数组初始化
本文探讨了 C++ 中普通数组和标准库类型 vector 的初始化方法。普通数组具有固定长度,而 vector 是一种可扩展的容器,允许动态调整大小。文章详细介绍了不同初始化方式及其应用场景,并提供了代码示例以加深理解。 ...
[详细]
蜡笔小新 2024-12-26 15:38:03
bash
golang常用库:配置文件解析库/管理工具viper使用
golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ...
[详细]
蜡笔小新 2024-12-28 13:47:52
int
编写有趣的VBScript恶作剧脚本
本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ...
[详细]
蜡笔小新 2024-12-28 09:46:23
int
使用Objective-C和dispatch库实现并发素数计算
本文介绍如何使用Objective-C结合dispatch库进行并发编程,以提高素数计数任务的效率。通过对比纯C代码与引入并发机制后的代码,展示dispatch库的强大功能。 ...
[详细]
蜡笔小新 2024-12-28 08:44:35
int
Go语言基础:Hello World 实践
本文将介绍如何使用 Go 语言编写和运行一个简单的“Hello, World!”程序。内容涵盖开发环境配置、代码结构解析及执行步骤。 ...
[详细]
蜡笔小新 2024-12-27 21:29:35
tree
新浪笔试题
1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ...
[详细]
蜡笔小新 2024-12-27 19:32:17
tree
C++实现经典排序算法
本文详细介绍了七种经典的排序算法及其性能分析。每种算法的平均、最坏和最好情况的时间复杂度、辅助空间需求以及稳定性都被列出,帮助读者全面了解这些排序方法的特点。 ...
[详细]
蜡笔小新 2024-12-27 19:25:14
int
USACO 2014 Jan - Moolympics区间记录优化算法
题目描述:给定n个半开区间[a, b),要求使用两个互不重叠的记录器,求最多可以记录多少个区间。解决方案采用贪心算法,通过排序和遍历实现最优解。 ...
[详细]
蜡笔小新 2024-12-27 18:14:31
int
Splay Tree 区间操作优化
本文详细介绍了使用Splay Tree进行区间操作的实现方法,包括插入、删除、修改、翻转和求和等操作。通过这些操作,可以高效地处理动态序列问题,并且代码实现具有一定的挑战性,有助于编程能力的提升。 ...
[详细]
蜡笔小新 2024-12-26 18:47:12
tree
2023年京东Android面试真题解析与经验分享
本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ...
[详细]
蜡笔小新 2024-12-26 17:45:48
tree
Weight the Tree(树形dp)
题目Link题目学习link1题目学习link2题目学习link3%%%受益匪浅!----- ...
[详细]
蜡笔小新 2024-12-26 15:55:56
tree
长春大学软件工程:二叉排序树实验报告
本实验主要探讨了二叉排序树(BST)的基本操作,包括创建、查找和删除节点。通过具体实例和代码实现,详细介绍了如何使用递归和非递归方法进行关键字查找,并展示了删除特定节点后的树结构变化。 ...
[详细]
蜡笔小新 2024-12-26 15:32:56
tianziqizhi
这个家伙很懒,什么也没留下!
Tags | 热门标签
audio
yaml
vbscript
actionscrip
timezone
erlang
express
hashset
copy
object
main
int
httprequest
jar
stream
cookie
filter
random
metadata
substring
keyword
foreach
post
solr
merge
nodejs
runtime
bash
tree
cSharp
RankList | 热门文章
1
Android库项目中的资源ID冲突的解决方法
2
Android实现下拉放大图片松手自动反弹效果
3
Android自定义View控件实现多种水波纹涟漪扩散效果
4
Android使用GestureOverlayView控件实现手势识别
5
在Android项目中使用AspectJ的方法
6
Android实现垂直跑马灯效果
7
Android实现调用摄像头和相册的方法
8
Android自定义View实现自动转圈效果
9
Android自定义PopupWindow实现炫酷的IOS对话框效果
10
Android 通过代码设置、打开wifi热点及热点连接的实现代码
11
android重力感应开发之微信摇一摇功能
12
Android studio gradle环境变量配置教程
13
Android在WebView中调用系统下载的方法
14
Android自定义控件实现不规则区域点击事件
15
Android自定义Camera实现拍照功能
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有