第十一次作业
1.输入一个字符串,统计大写字母、小写字母、空格、数字和其他字符的个数。(要求用字符数组)
#include<stdio.h> #include<string.h> main() { char ch[100]; int a=0,b=0,c=0,d=0,e=0,i=0; printf("请输入一串字符串:\n"); gets(ch); while(ch[i]!='\0') { if(ch[i]>='A'&&ch[i]<='Z') { a++; } else if(ch[i]>='a'&&ch[i]<='z') { b++; } else if(ch[i]>='0'&& ch[i]<='9') { c++; } else if(ch[i]==' ') { d++; } else { e++; } i++; } printf("大写字母:%d\n小写字母:%d\n数字:%d\n空格: %d\n其他字符:%d\n",a,b,c,d,e); return 0; }
2.利用字符数组进行密码的验证,如果密码正确则登陆成功,否则登录失败。密码允许输入三次。
#include <stdio.h> #include <string.h> int main() { int i; char password[]="abcdef"; char input[100]={0}; for(i=0;i<3;i++) { printf("请输入密码:\n"); gets(input); if (strcmp(password,input)==0) { printf("登陆成功\n"); break; } else { printf("登陆失败\n"); } } return 0; }
3.编写一个函数,判断一个字符串是否是回文。若是回文函数返回值为1;否则返回值为0。回文是顺读和倒读都一样。如“level”“abba”等是回文,但“abcd”不是回文。在主函数中调用回文函数对输入的字符串进行判断。
#include<stdio.h> #include<string.h> int huiwen(char str[100+1]); int main() { int b; char str[100+1]; gets(str); if(huiwen(str)==0) { printf("这个数不是回文数\n"); } else { printf("这个数是回文数\n"); } return 0; } int huiwen(char str[100+1]) { int i,j,b; b=strlen(str); for(i=0,j=b-1;i<=j;i++,j--) { if(str[i]==str[j]) { continue; } else { return 0; } } return 1; }
实验总结(实验中遇到的问题及解决方法)
- 判断回文数的时候要将判断写在一个循环里边。
- 注意不要越界。
课程体会
1.经过一个学期的学习,具体我也没有统计过写了多少代码,与开学初相比,我从对C语言的一无所知到学的略精通。
2.C语言在编写程序是有一定的格式,C语言这门课程东西比较琐碎,想要学好C语言就应该多多练习,将知识学精。
3.采用技术博客这种新颖的方式提交作业,更加方便,快捷,也有利于帮助老师更快的管理学生,知道学生的学习情况,技术博客也有利于同学之间的互相学习,也可以随时指出同学所交的博客作业的不足之处。如果下一届学弟学妹们入学了,我也会向他们推荐这种学习平台,这对他们的学习会有很大的帮助。
4.老师和助教在我学习C语言的过程中给予了我很大的帮助,是我对学习C语言更加感兴趣,在C语言的学习过程中谢谢老师和助教对我的帮助,谢谢你们,你们辛苦了。