C语言统计大写字母跨度,实验1-C语言开发环境使用和数据类型、运算符、表达式-实验总结与体会...
一,实验总结
本此实验共9组练习,其中前5组为练习c程序结构与书写规范,3组为补全程序,最后一组为自主编写。
Part 1
前五组中没有出现什么问题,但在学习指导P116第一题中:
#include
intmain(){int a=5,b=7,c=100;intf,e,d;
d= a/b*c;
e= a*c/b;
f= c/b*a;
printf("d=%d,e=%d,f=%d",d,e,f);return 0;
最开始 f 的运算式写成了
f=c/d*a
,运算一直是错误的,由此分析得出,出现除数为0时,都会出现除法溢出异常,程序不能正常运行。此情况下运算结果如下图,可见程序未正常运行并进行报错。
将表达式修改回来之后,即可正常运行且结果无误。
Part 2
(1)判断奇偶: ex1.c
补全后如图
//程序功能://要求用户从键盘输入一个整数,判断其是奇数还是偶数
#include
intmain() {intx;
printf("输入一个整数: \n");
scanf("%d",&x);//在×××处填写相应表达式//使得当表达式成立时,判定x是奇数,否则是偶数
if(x%2==!0)
printf("是奇数");elseprintf("是偶数");return 0;
}
运行结果为
(2)根据不同的输入,显示不同提示信息:ex2.c
补全后如图
/*程序功能:
要求用户从键盘输入1~7之间的整数
如果输入的是1~5, 提示用户是工作日,要努力工作;
如果输入的是6或7,提示用户是休息日,放松休息;
否则,提示用户输入不在合法范围*/#include
intmain() {intdays;
printf("输入一个整数: \n");
scanf("%d",&days);//补足×××处的表达式,使得满足程序功能描述
if(days<=5&&days>0) //days在1到5之间
printf("workdays, fighting\n");else if(days==6||days==7) //days是6或7
printf("weekend, relax~\n");elseprintf("Ooops, not in 1~7\n");return 0;
}
运行结果为
(3)根据用户输入字符,判断如果是小写字母,则转换成大写;否则保持原样: ex3.c
补全后如图
//功能://从键盘上输入单个字符//如果是小写字母,则转换成大写后输出//否则,什么也不做,原样输出
#include
intmain() {charch;
printf("输入一个字符:\n");
scanf("%c",&ch);//根据程序功能描述,补足程序
if(ch>='a'&&ch<='z') //如果ch是小写字母,补足判定ch是小写字母的表达式
ch-=32; //补足把ch中的小字母转换成大写字母的表达式语句//说明:语句就是在表达式末尾加分号;
printf("%c\n",ch);return 0;
}
运行结果为
Part 3
由十进制转换为二进制的数学计算方法可知,采用“除二取余,逆序排列”的方法。
在尝试编写代码的过程中,我主要遇到了两个问题:(1)如何进行逆序排列;(2)当数值过大时,程序无法成功将十进制数转化为二进制数。
首先尝试了
#include
intmain()
{int z=0,k=1,i,a,b;
printf("输入一个十进制整数:\n");
scanf("%d",&a);
b=a;while(a>0)
{
i=a%2;
z=k*i+z;
k=k*10;
a=a/2;
}
printf("十进制整数%d的二进制为:%d",b,z);return 0;
}
结果在1023及以前,运算结果都是正常的;到了1024之后,结果就不是二进制数了。
此后参考了博主“低俗小怪”使用了【do while】的代码(如下),但无法理解其中使用黄色标记的部分(链接https://www.cnblogs.com/didiaoxiaoguai/p/6731310.html)
#include
intmain()
{inta;char s[20];int i = 0, rem;
printf("Input number:");
scanf("%d", &a);do{
rem= a % 2;
a= a / 2;
s[i]=rem;
i++;
}while (a != 0);
printf("输出二进制:");while (i > 0) printf("%d", s[--i]);//
return 0;
}
二、实验总结与体会
1.本此实验中,主要使用了Dev C++软件,同时尝试使用了Visual Studio 2010 和Visual Studio 2012。vs的功能更加健全,但Dev更便于在学习过程中进行操作。
2.无论是在编程过程或者测试过程中,都需要注意英文符号与中文符号的不同之处,不可混淆。
3.要继续加强关系运算符和逻辑运算符的学习与记忆,明确在哪里使用哪个运算符以及运算符间的优先级关系。
4. 注意进行测试,要多次不重复且跨度尽量大的进行测试,避免偶然性的出现。
C语言统计大写字母跨度,实验1-C语言开发环境使用和数据类型、运算符、表达式-实验总结与体会...相关推荐
- c语言中大写字母A转小写,C语言 | 大写字母A转换为小写a
C语言 | 大写字母A转换为小写a "要成为绝世高手,并非一朝一夕,除非是天生武学奇才,但是这种人-万中无一" --包租婆这道理放在C语言学习上也一并受用.在编程方面有着天赋异禀的 ...
- 【C语言】输入英文标题,统计大写字母、小写字母、数字和其他字符的个数。
学习目标: 输入英文标题,统计大写字母.小写字母.数字和其他字符的个数. 学习内容: 1了解大小写字母.数字和其他字符的Ascall码. 2.学会使用getchar():从键盘读入一个字符. 3.熟练 ...
- 统计大写字母个数 C语言实现
统计大写字母个数 描述 找出给定字符串中大写字符(即'A'-'Z')的个数. 数据范围:字符串长度:1\le |s|\le 250\1≤∣s∣≤250 字符串中可能包含空格或其他字符 进阶:时间复杂度 ...
- 【094】统计大写字母个数
♣题目部分统计大写字母个数 找出给定字符串中大写字符(即'A'-'Z')的个数接口说明原型:int CalcCapital(String str);返回值:int♣答案部分Python isupper ...
- 《华为机试》刷题之HJ84 统计大写字母个数
<华为机试>刷题之统计大写字母个数 我不知道将去向何方,但我已在路上! 时光匆匆,虽未曾谋面,却相遇于斯,实在是莫大的缘分,感谢您的到访 ! 题目: 找出给定字符串中大写字符(即'A'-' ...
- C语言 将大写字母转换成相应的小写字母
C语言 将大写字母转换成相应的小写字母 代码: #include <stdio.h> void main(){ char a; printf("请输入一个大写字母:") ...
- java 输入一串字符统计大写字母个数小写字母个数及特殊符号并输出
```java//输入一串字符统计大写字母个数小写字母个数及特殊符号并输出public static void test5(String str){char[] s = str.toCharArray ...
- python实训三 编写函数,接收一个字符串,分别统计大写字母,小写字母,数字,其他字符的个数,并以元组的形式返回结果
编写函数,接收一个字符串,分别统计大写字母,小写字母,数字,其他字符的个数,并以元组的形式返回结果 源码: intcount=[] upstrcount=[] lowstrcount=[] other ...
- C语言实现大写字母A转换为小写a
例3:C语言实现将大写字母A,输出为小写字母a 解题思路:字符数据以ASCII码存储在内存的,形式与整数的存储形式相同,所以字符型数据和其他算术型数据之间可以互相赋值和运算. 比如A在ASCII码表的 ...
最新文章
- np.reshape()
- ValueError: Bin labels must be one fewer than the number of bin edges
- React Native JSBundle拆包之原理篇
- .Net中url传递中文的解决方案
- 算法9-5:最大流算法的Java代码
- 响应文件是不是标书_什么是标书?投标书有哪些分类?标书和投标书的不同?...
- 【Spring】Spring Boot 和 Redis 常⽤操作
- ECMAScript6学习笔记 ——let、const、变量解构赋值
- 在ASP.NET应用启动的时候初始化的几种方法
- 根据缺口的模式选股买股票,python 学习代码
- 基于单片机的表决器(七人)系统设计(#0496)
- 在PreferenceScreen加入自定义布局
- 机器学习与数据挖掘 编程实现k均值算法
- 消息: Automation 服务器不能创建对象
- 笔记本电脑建立Wifi热点多种方法
- Redhat8.0安装mariadb
- 图像算法---白平衡AWB
- 2022.11.28 英语背诵
- python中时间模块datetime总结
- Java模拟消息队列
热门文章
- JS阿拉伯数字转大写
- HTML5期末大作业:龙之谷网络游戏网站设计——龙之谷网络游戏(9页) 学生网游网页设计模板 大学生HTML网页制作作品 简单手游网页设计成品 dreamweaver学生网站模板
- 502Bad Gateway
- 循环神经网络 递归神经网络_CNTK-递归神经网络
- 设计模式学习笔记十七(迭代器设计模式)
- python爬快手个人介绍_抖音爬腻了,安卓爬腻了?python爬取快手ios端首页热门视频!...
- QT中添加图片资源的方法
- 小兔鲜儿电商前台项目(一) —— 项目初始化
- [Android]开机自启动脚本和selinux权限配置
- 理论+实操:部署nginx+apache动静分离