一、实验内容
1.输入一个字符串,统计大写字母、小写字母、空格、数字和其他字符的个数。(要求用字符数组)
#include# define N 100int main(){ int sum1=0,sum2=0,sum3=0,sum4=0,other=0,ch=0; char cstr[N]; printf("输入一串字符\n"); gets(cstr); while(cstr[ch]!='\0') { if(cstr[ch]>='A'&&cstr[ch]<='Z') { sum1=sum1+1; } else if(cstr[ch]>='a'&&cstr[ch]<='z') { sum2=sum2+1; } else if(cstr[ch]==' ') { sum3=sum3+1; } else if(cstr[ch]>='0'&&cstr[ch]<='9') { sum4=sum4+1; } else { other=other+1; } ch++; } printf("大写字母共%d个\n小写字母共%d个\n空格共%d个\n数字共%d个\n其他%d个\n",sum1,sum2,sum3,sum4,other); return 0;}
2.利用字符数组进行密码的验证,如果密码正确则登陆成功,否则登录失败。密码允许输入三次。
#include#include int main(){ int a; char password[]="secret",input[8]; for(a=0;a<3;a++) { printf("输入密码:\n"); scanf("%7s",input); if(strcmp(password,input)==0) { printf("对了!"); break; } else printf("错误密码!\n"); } return 0;}
3.编写一个函数,判断一个字符串是否是回文。若是回文函数返回值为1;否则返回值为0。回文是顺读和倒读都一样。如“level”“abba”等是回文,但“abcd”不是回文。在主函数中调用回文函数对输入的字符串进行判断。
#include#include #define N 100int hw(char a[N]);int main(){ char a[N]; int b; printf("输入字符:\n"); gets(a); b=hw(a); if(b==0) { printf("不是回文数"); } else if(b==1) { printf("是回文数"); } return 0;} int hw(char a[N+1]) { int i,j,c; c=strlen(a); for(i=0,j=c-1;j>i;i++,j--) { if(a[i]==a[j]) continue; else if(a[i]!=a[j]) { return 0; } } return 1; }
二实验总结1.赋初值2.回文数记得用一个函数,定义字符长度,在进行循环3.声明变量
三1.经过学习c语言,我一共写了几百行代码了,从第一次实验课到最后一次实验课从刚开始的着急到现在的从容,从刚开始的害怕不会到现在有兴趣的去改好每一个小程序,从刚开始的好多错误不会改到现在能把错误认真的改好,不仅有老师的帮助还有好多学长的帮助,他们每一个人都无私的在实验课上为我们服务着。c语言不再是枯燥的代码,它好像是活泼的字符通过我们的排序,让他们变成了可以运行的小游戏等,其实他们很有趣,第一次会很难,但是只要好好学,就能找到乐趣。2.千万不要抄别人的代码,要自己写,否则,你会别人超越。不会的向同学交流,在自己写一遍,加深印象,多看看,自己前几次的程序并总结归纳知识点。多看,多记。3.博客方式很好可以总结归纳,方便我们查看,也可以存在手机里。对于相同的代码能验证就好了。4老师对我们很认真,每一次实验课都走的很晚,并且对我们的作业评判很认真,助教哥哥对我们好,帮我们改程序,还监督我们交作业。