统计从键盘输入一行字符的个数:

 1 //用了getchar() 语句2 //这里的\n表示回车
 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 int main()
 4 {
 5     int n = 0;
 6     printf("输入键盘上的字符\n");
 7     while (getchar() !='\n'){
 8         n++;
 9     }
10     printf("%d\n", n);
11     system("pause");
12     return 0;
13 }


//更改题目:输入一行字符,直到输入9为止,并统计输入的个数

//当你输入一行字符如果第一个就为9的话,那么打印出来i的值结果为0,因为当循环判断到9的时候已经跳出,统计结果就是0
//当你输入了一行字符没有9的时候,键入回车键,仍然打印不出来i的结果,因为while循环一直在循环无法跳出,回车键仍然算做键入的字符,有几个算几个
//直到你打出来9为止,统计输入的字符(包括回车键)的个数,即为i的值

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 int main (){
 4     int i = 0;
 5     while (getchar() != '9'){
 6         i++;
 7     }
 8     printf("该系列字符不等于9的个数是\n%d\n", i);
 9     system("pause");
10     return 0;
11 }

1-8加回车键,不等于9的键一共有九个


//再次更改题目:输入一行字符,直到输入9为止,并统计输入的个数
//值得注意的是,换位思考,作为用户的他们并不想看到输入无限个不含9的字符仍然挑不出结果
//这时,我们加一个if语句,当i加到10(输入的10个键仍然不包含'9'的时候),则用break语句跳出,若小于10个数字包含9则退出,并打印不为9的个数。

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 int main(){
 4     int i = 0;
 5     while (getchar() != '9'){
 6         i++;
 7         if (i == 10){
 8             printf("输入过多\n");
 9             break;
10         }
11     }
12     if (i != 10){
13
14
15         printf("该系列字符不等于9的个数是\n%d\n", i);
16     }
17     system("pause");
18     return 0;
19 }


//字符串内容之间的复制,采用strcpy函数,需要调用<string.h>函数库
//strcpy(a,c)
//顺便再次提一下关于数组中括号里面填数字的问题,例如 arr[]="hi" ,中括号内应该填3或者选择不填,当然不填比较省事
//为什么会多一个数?因为还有个结束符\0,也要占一个内存空间,但是计算长度(strlen(arr[]))的时候结果还是为2,sizeof时结果为3.
//关于数组这个点需要谨记,比较容易遗忘。

 1 #define _CRT_SECURE_NO_WARNINGS
 2 #include <stdio.h>
 3 #include <stdlib.h>
 4 #include<string.h>
 5 int main()
 6 {
 7     char a[] = "hi", c[] = "i am teacher!";
 8     strcpy(c,a);
 9     printf("%s\n%s\n", a, c);
10     system("pause");
11     return 0;
12 }


设计程序:银行卡密码输入

//用了strcmp函数,调用头文件为<string.h>
//题中不可以写成if(strcmp password==100001),因为c语言不支持这种写法,通过数组比较,当password数组中的值
//小于100001时,==后应为负数,反之大于时为正数
//c语言中strcmp这种比较方法可概括为"查英文词典法"

 1 #define _CRT_SECURE_NO_WARNINGS
 2 #include<stdio.h>
 3 #include<stdlib.h>
 4 #include<string.h>
 5 int main(){
 6     int i;
 7     char password[10] = { 0 };
 8     for (i = 1; i <= 3; i++){
 9         printf("请输入密码\n");
10 //        字符数组,scanf时候可以不加&
11         scanf("%s", &password);
12         if (strcmp(password, "100001") == 0){
13             printf("输入正确!\n");
14             printf("正在登陆...\n");
15             break;
16         }
17         else{
18             printf("输入错误,请重试\n");
19             if (i == 3){
20                 printf("重复输入过多,退出登录\n");
21             }
22         }
23     }
24     system("pause");
25     return 0;
26 }

转载于:https://www.cnblogs.com/hetaoyuan/p/10076192.html

C语言程序设计:用strcpy比较数组(银行卡密码程序设计),strcpy(复制数组内容)和getchar()(敲键盘字符,统计不想要的字符的个数)...相关推荐

  1. 吉林大学超星MOOC学习通高级语言程序设计 C++ 实验04 数组及其在程序设计中的应用(2021级)(1)

    1. 索引数组排序 题目编号:Exp04-Enhance04,GJBook3-06-21 题目名称:索引数组排序 题目描述:已知n(n≤100)个元素的整型数组 A 未排序,一个索引数组 B 保存 A ...

  2. c语言实验报告5数组,c语言实验报告五一维数组.doc

    c语言实验报告五一维数组 <C程序设计>课程实验报告 学院: 班级: 姓名: 学号: 实验设备:计算机1台2011年3月1日 实验项目名称一维数组 掌握一维数组的定义.初始化,以及一维数组 ...

  3. c语言程序定义不知数量的一维数组,c语言程序设计10-第6章 利用数组处理批量数据 6.1 怎样定义和引用一维数组.ppt...

    c语言程序设计10-第6章 利用数组处理批量数据 6.1 怎样定义和引用一维数组 * 临沂大学汽车学院:韩晓翠 第6章 利用数组处理批量数据 6.1 怎样定义和引用一维数组 授课要点 数组的概念 一维 ...

  4. 0039c语言作业答案2020,中石油华东《程序设计(C语言)》2020年春季学期在线作业【答案】...

    <程序设计(C语言)>2020年春季学期在线作业(一) 试卷总分:100  得分:100 一.单选题 (共 20 道试题,共 100 分) 1.已知:int a[ ][3]={1,2,3, ...

  5. c语言多维数组指针地址讲解,C语言入门之多维数组的指针变量

    一.多维数组地址的表示方法 设有整型二维数组a[3][4]如下: 0 1 2 3 4 5 6 7 8 9 10 11 设数组a的首地址为1000,各下标变量的首地址及其值如图所示. 在前面曾经介绍过, ...

  6. C语言试题六十三之请编写函数fun:将s所指字符串中ascii值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。

    1. 题目 请编写函数fun,其功能是:将s所指字符串中ascii值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中. 2 .温馨提示 C语言试题汇总里可用于计算机二级C语言笔试.机试.研 ...

  7. C语言试题六十一之请编写函数fun:将s所指字符串中下标为偶数的字符删除,串中剩余字符形成新串放在t所指数组中。

    1. 题目 请编写函数fun,其功能是:将s所指字符串中下标为偶数的字符删除,串中剩余字符形成新串放在t所指数组中. 2 .温馨提示 C语言试题汇总里可用于计算机二级C语言笔试.机试.研究生复试中C程 ...

  8. c语言实验四报告,湖北理工学院14本科C语言实验报告实验四数组

    湖北理工学院14本科C语言实验报告实验四 数组.doc 实验四 数 组实验课程名C语言程序设计专业班级 14电气工程2班 学号 201440210237 姓名 熊帆 实验时间 5.12-5.26 实验 ...

  9. 中油C语言第一次在线作业,中石油华东《程序设计(C语言)》2020年春季学期在线作业(二)...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 <程序设计(C语言)>2020年春季学期在线作业(二) 试卷总分:100 得分:100 一.单选题 (共 20 道试题,共 100 分) 1. ...

  10. 二维数组递归算法c语言,C语言课程设计--二维数组的按行求和及递归函数的编写简单家庭财务管理程序的设计.doc...

    成 绩 评 定 表 学生姓名李艳坤班级学号专 业通信工程课程设计题目C语言课程设计评 语 组长签字: 成绩 日期 20 年 月 日 课程设计任务书 学 院信息科学与工程通信工程学生姓名班级学号课程设计 ...

最新文章

  1. Log4cplus1.04的使用
  2. activity切换动画特效
  3. 2.羽翼sqlmap学习笔记之MySQL注入
  4. java使用MD5加密
  5. Linux脚本让我选择文件,linux – 用于选择文件和打印文件大小的Awk脚本
  6. AESNI/XData勒索病毒来袭 目前主要在乌克兰传播 它居然还能使用硬件加速加密过程...
  7. Azure Cosmos Db 介绍及演示
  8. todolist作业效果
  9. ubuntu下的tomcat监控脚本
  10. 关于PopWindow的一些介绍
  11. 机器学习笔记 - 深度学习的预处理和图像白化
  12. 锐捷530-E无线AP配置
  13. 【优化求解】基于天牛须算法PID控制器优化设计matlab代码
  14. JSP是什么?JSP是什么意思?
  15. project telecom / dianxin / shenfenzheng / SIM
  16. 因果关系基本概念:后门标准
  17. 美国音乐学院计算机音乐专业排名2015年,2019USNEWS美国音乐专业排名前100!
  18. NXP MPC574X CAN接收滤波配置
  19. cookies、sessions、token区别
  20. [语音处理] .flac文件转.wav文件

热门文章

  1. 大数据广告技术公司WindyVale获百万美元投资
  2. 攻防世界ReverseMe-120详解
  3. 【JetPack Compose】JetPack Compose简单介绍
  4. proteus仿真51单片机学习日记
  5. 记应聘:北京童程童美科技有限公司 人工智能编程讲师
  6. 公民最反感官话套话出炉:对不起 领导开会去了
  7. 古月居 ROS入门21讲 第十三讲 客户端Client的编程实现
  8. 搬运@烧硬盘的泛微OA二次开发环境搭建
  9. 笑着面对上班,这些表情包让你心情愉悦
  10. Diamond Collector