一、实验内容
1.实验要求
输入一个字符串,统计大写字母、小写字母、空格、数字和其他字符的个数。(要求用字符数组
代码
#include<stdio.h> #include<conio.h> #define N 100 int main() { char cstr[N]; int i,d=0,x=0,s=0,n=0,o=0; printf("请输入一个字符串\n"); gets(cstr); for(i=0;cstr[i]!='\0';i++) { if(cstr[i]<='z'&&cstr[i]>='a') { x++; } else if(cstr[i]>='A'&&cstr[i]<='Z') { d++; } else if(cstr[i]==' ') { s++; } else if(cstr[i]<='9'&&cstr[i]>='0') { n++; } else { o++; } } printf("大写字母有%d个\n小写字母有%d个\n空格有%d个\n数字有%d个\n其他有%d个",d,x,s,n,o); return 0; }
程序运行结果截图
2.实验要求
利用字符数组进行密码的验证,如果密码正确则登陆成功,否则登录失败。密码允许输入三次。
代码
#include<stdio.h> #include<string.h> int main() { int i; char password[]="secret",input[8]; for(i=0;i<3;i++) { printf("请输入密码\n"); scanf("%7s",input); if(strcmp(password,input)==0) { printf("welcome"); break; } else { printf("输入错误\n"); } } return 0; }
程序运行结果截图
3。实验要求
编写一个函数,判断一个字符串是否是回文。若是回文函数返回值为1;否则返回值为0。回文是顺读和倒读都一样。如“level”“abba”等是回文,但“abcd”不是回文。在主函数中调用回文函数对输入的字符串进行判断。
代码
#include<stdio.h> #include<conio.h> #include<string.h> #define N 100 int huiwen (char cstr[]); int main() { char cstr[N]; printf("输入一个字符串"); gets(cstr); if(huiwen(cstr)==1) { printf("是回文数"); } else if(huiwen(cstr)==0) { printf("不是回文数"); } return 0; } int huiwen (char cstr[]) { int i,j; j=strlen(cstr)-1; for(i=0;i<(j/2.0)-1;i++) { if(cstr[i]==cstr[j-1-i]) { continue; } else { return 0; } } return 1; }
程序运行结果截图
二、实验总结
1.要限制字符串的个数
2.实验3中需要注意函数中定义的函数的变量的类型
3.字符数字必须限定数组长度字符串中不能含有空格
三、课程体会
1. 经过一个学期的学习,你统计过一共写了多少行代码吗?与开学初相比,你对C语言或者程序设计有了哪些认识和理解?
一个学期的学习后我没有统计过我写过多少代码,因为感觉写代码是一件非常痛苦的事情,成就感远远不比恐惧的感觉多。开学初我对C语言毫不了解,第一节课后更是很懵圈,初次接触陌生的东西很难适应C语言真的很可怕,不过经过一个学期的学习,在老师的精心较大下我对C语言的学习有了一定得信心,对C语言也不再难么抵触,对于我来说敢于尝试就是比较大的进步了。
2. 在C语言的学习过程中,你有什么经验和教训分享给大家?
在C语言的学习中我并没有很有价值的经验,但教训有很多。比如看课本,写代码之前一定要看课本,不能带着很多对只是的疑惑写代码,再有就是实践,对于一个程序有思路一定要写出来。程序中注释也很重要,如果思路被打断,注释可以提供很好的帮助。
3. 对于采用技术博客提交作业这种形式,你有什么看法,对你有帮助的地方在哪里?你觉得还可以做哪些改进?,如果下一届的学弟学妹们入学了,你会给他们推荐这种教学形式吗?
我觉得技术博客提交作业形式很好,不仅能够督促我们学习,而且能够增加我们和老师交流的机会。这是一种很合适的教学形式。
4. 对于这门课程,对于老师和助教的工作,你有什么好的建议或者意见,都可以提出来,我们一起改进。
5.请大家将自己的博客进行整理,从第一次作业开始(包括你的自我介绍哦,没有写的同学,欢迎补上),将所有博客内容包括评论保存到word文档中,然后发到我的邮箱。我会整理成一本博客书,留作课程资料,也会分享给大家留作纪念。