关于C语言中数组输入与打印
这里使用一个简单的账号密码输入并打印的程序来分析。
输入
#include <stdio.h>int main()
{char account[20] = { 0 };int password[20] = { 0 };printf("请输入账号:");scanf("%s", account);printf("请输入密码:");scanf("%d", password);return 0;
}
注意这里account是字符数组,而password是整型数组(实际上无论是account还是password使用字符数组都是更为合适的,但这里为举例password使用的整型数组),如果这样输入的话会出现如下情况:
在account里输入的123分别位于account[0]、]account[1]、account[2],而在password里的123则全部位于password[0]中。
为让1 2 3 分别位于password数组不同位置中,这里换成逐位输入的方法:
#include <stdio.h>int main()
{char account[20] = { 0 };int password[20] = { 0 };printf("请输入账号:");scanf("%s", account);printf("请逐位输入密码:");int i = 0;for (i = 0; i < 20; i++){scanf("%d", &password[i]);}return 0;
这个方法的弊端较为明显,比如会强制要求输入20个整型,如果采取动态数组或者链表的形式,就可以自己控制输入的个数,但由于本篇是纯新手向,所以仍然采取逐位输入的方法。
打印
#include <stdio.h>int main()
{char account[20] = { 0 };int password[20] = { 0 };printf("请输入账号:");scanf("%s", account);printf("请逐位输入密码:");int i = 0;for (i = 0; i < 20; i++){scanf("%d", &password[i]);}printf("账号:%s\n密码:%s\n", account, password);return 0;
}
在打印password时,如果输出类型误使用了%s,由于password本身是整型数组,所以打印出来的是第一个元素的ASCII码对应的符号,而如果输出类型为%d
#include <stdio.h>int main()
{char account[20] = { 0 };int password[20] = { 0 };printf("请输入账号:");scanf("%s", account);printf("请逐位输入密码:");int i = 0;for (i = 0; i < 20; i++){scanf("%d", &password[i]);}printf("账号:%s\n密码:%d\n", account, password); return 0;
}
也是不能实现打印password中所有内容的,只有使用逐位打印的方法,才能将password中的所有内容全部打印出来。
#include <stdio.h>int main()
{char account[20] = { 0 };int password[20] = { 0 };printf("请输入账号:");scanf("%s", account);printf("请逐位输入密码:");int i = 0;for (i = 0; i < 20; i++){scanf("%d", &password[i]);}printf("账号:%s\n", account);i = 0;for (i = 0; i < 20; i++){printf("%d",password[i]);}return 0;
}
tip:
建议在需要实现类似的功能的时候,都使用字符串形式,能减少很多麻烦。
关于C语言中数组输入与打印相关推荐
- python输出变量的值使用_如何使用python语言中的输入和输出打印对应的值
在python设计语言中,输入使用input()方法,而输出使用print()方法:其中,输出方法可以拼接变量,如字符串.数值类型的.下面利用几个实例说明python语言中的输入和输出的用法,操作如下 ...
- c语言中数组的定义与应用
定义方法: 类型 变量名[元素个数]: 比如: int a[6]; char b[24]; double c[3]; 注意,c语言中数组的元素个数是不能动态定义的(修改:在c99中已经可以了) 也 ...
- c语言中数组的变量j是什么,c语言中数组,一般数组
c语言中数组,一般数组. 1.什么是数组,数组有什么用? 为了方便处理而把类型相同的变量有序地组织起来的一种形式. 类型相同的元素集中起来,在内存上排成一条直线. 2.数组的声明. 元素类型.变量名和 ...
- C语言中数组的排序算法详解——选择法、冒泡法、交换法、插入法、折半法
选择法排序 选择法排序是指:如果要把一个数组从小到大排列,那么就从该数组中依次选择最小的数字来排序.从第一个数字开始,将第一个数字与数组中剩下数字中最小的那一个交换位置,然后将第二个数字与剩下数字中最 ...
- 怎么在c语言中输入一串字母,C语言中如何输入一个数字n,再输入一串字母,控制字母个数为n(n是变量,1...
C语言中如何输入一个数字n,再输入一串字母,控制字母个数为n(n是变量,1以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ...
- c语言如何用指针操作一维字符数组,C语言中数组和指针的互操作
C是一种怀旧的语言,因为它的历史很久远,然而自从各种面向对象的编程语言的相续出现让它的影响力日减.当然了,这是无可非议的,但是C的高效性是其他语言无妨比拟的,所以我们有必要把握其中的精华与奥妙,也就有 ...
- C语言中控制printf的打印颜色实例及vt100的控制符
C语言中控制printf的打印颜色实例及vt100的控制符文档 收藏 转自:http://blog.csdn.net/evimacsl/archive/2010/01/18/5206836.aspx ...
- [工具]-C语言中字符串的形式打印16进制数据
C语言中字符串的形式打印16进制数据. 这样写,输出更直观些 #define PRINT_BUF_MAX (32) #define TAG_STRING_MAX (32) static void pr ...
- 从编译器角度分析C语言中数组名和指针的区别
从编译器角度分析C语言中数组名和指针的区别 数组名和指针是两个往往很容易让人们混淆的概念,很多人以为数组名就是一个指针,也有很多人知道数组名不同于指针但是仅知道数组名的值不能像指针一样改变. 例如你可 ...
- 如何确定C语言中数组的大小?
如何确定C语言中数组的大小? 也就是说,数组可以容纳多少个元素? #1楼 如果您要处理未作为参数接收的数组,则sizeof方法是正确的方法. 作为参数发送给函数的数组被视为指针,因此sizeof将返回 ...
最新文章
- rsync问题-connection refused(111)、Unknown module
- python 金字塔的程序_python生成金字塔
- Android扩展类方法,Android 扩展 uni小程序SDK 原生能力
- STM32 IAP docs
- 编写 Window 服务程序
- mysql 23000_mysql – SQLSTATE [23000]:完整性约束违规:1452无法添加或更新子行:外键约束失败...
- 用Redis客户端工具连接Redis
- SQL数据库被置疑后的恢复步骤(附详细图解)-虽然转载但是亲自实现过
- ubuntu下安装FoxitReader pdf阅读器
- html编辑器菜鸟工具,富文本编辑器TinyMCE菜鸟使用教程
- html设置form居中,HTML中的表单Form实现居中效果
- 组织行为学笔记-第一章
- 20135337朱荟潼 Linux第二周学习总结——操作系统是如何工作的
- 怎么生成a类型的对象 java_用一个 java 程序! 写一个类A, 该类创建的对象可以调用方法f输出英文字母表,然后再编写...
- 中国足球如何才能捧起大力神杯
- 什么是UML(UML总结)
- 缺乏技术专利支撑的小米还能走多远
- 基于Twitter的Snowflake算法实现的分布式ID生成器
- 基于STM32三路超声波避障小车
- 网上水果店html,开水果店起步先干什么,水果店刚起步要怎么做