1。题目:
输入一个字符串,统计大写字母、小写字母、空格、数字和其他字符的个数。(要求用字符数组
代码
#include<stdio.h> #define n 100 int main() { char a[n]; int i,a1=0,b=0,c=0,d=0; printf("输入字符串: "); gets(a); for(i=0;a[i]!=' ';i++) { if(a[i]>='A'&&a[i]<='Z') { a1++; } else if(a[i]>='a'&&a[i]<='z') { b++; } else if(a[i]>='0'&&a[i]<='9') { c++; } else { d++; } } printf("大写字母有%d个,小写字母有%d个,数字有%d个,其他符号有%d个. ",a1,b,c,d); return 0;
运行结果:
2.题目:
利用字符数组进行密码的验证,如果密码正确则登陆成功,否则登录失败。密码允许输入三次。
代码:
#include<stdio.h> #include<string.h> #define n 100 int main() { char a[n],b[n]; int i,c,d=1; printf("设置一个密码 "); gets(a); printf("输入密码,你有三次机会验证。 "); do { gets(b); if(strcmp(a,b)==0) { printf("密码正确 "); break; } else if(d!=1) { printf("密码错误,剩余%d次。 ",d-1); d++; } else { printf("密码错误,没有机会了。 "); break; } }while(d!=0); 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.优化程序,能用一个循环尽量用一个。
课程体会:
1.初次接触C语言,一脸懵逼,现在好多了,学会去理解新的东西;
2.一开始并不知道有什么用途,后来才知道它的用途,这是在实验室用程序 运行的LED小灯
这是实验经历让我明白我们编程序是什么用途,还有一个木马清理工具,木马是通过改动电脑程序来使电脑瘫痪的,我们就是要编程改动木马程序,达到清除木马病毒的目的
3.上课时一定要注意听讲,课下也要注意多复习课上讲的东西,虽然课本和老师讲的有一些不一样,但是在课下也一定要多看书,不要着急写代码,要好好看看老师发的课件,最好能多关注电脑报;
4.我非常喜欢老师的这种教学方式,紧跟时代潮流,强帮弱,还能相互交流,很喜欢,希望这样的方式也给学弟学妹用;
5.谢谢老师这么帮助我们,太操心了,您辛苦啦!