程序目的:编写程序,从键盘输入一行字符,一回车键为结束,分别统计其中的大写字母,小写字母,空格,数字和其他字符的个数!
这是我的失败代码:
#include <stdio.h>
int daxie(char *str);
int xiaoxie(char *str);
int space(char *str);
int num(char *str);
void main()
{ char a[80];
char *str=a;
int daxie1=0;
int xiaoxie1=0;
int space1=0;
int num1=0;
int others=0;
printf(“请输入,按回车结束:”);
while((*str++=getchar())!=’\n’);
*str=’\0′;
str=a;
while((*str++)!=’\0′)
{
if(daxie(str))
daxie1+=1;
else if(xiaoxie(str))
xiaoxie1+=1;
else if(space(str))
space1+=1;
else if(num(str))
num1+=1;
else
others+=1;
}
printf(“大写有:%d\n小写有:%d\n空格有:%d\n数字有:%d\nothers:%d\n”,daxie1,xiaoxie1,space1,num1,others);getch();
}
int daxie(char *str)
{
if(*str>=65&&*str<=90)
return 1;
else
return 0;
}
int xiaoxie(char *str)
{
if(*str>=97&&*str<=122)
return 1;
else
return 0;
}
int space(char *str)
{
if(*str==’\32′)
return 1;
else
return 0;
}
int num(char *str)
{
if(*str>=48&&*str<=57)
return 1;
else
return 0;
}
请大虾指教!!!
>> 本文固定链接: http://www.vcgood.com/archives/2032
没人吗>?急啊!!大哥!
#include <stdio.h>
#include<conio.h>
int daxie(char *str);
int xiaoxie(char *str);
int space(char *str);
int num(char *str);
void main()
{ char a[80];
char *str=a;
int daxie1=0;
int xiaoxie1=0;
int space1=0;
int num1=0;
int others=0;
printf(“请输入,按回车结束:”);
*str=getchar();
while(*str!=’\n’)
{
str++;
*str=getchar();
}
*str=’\0′;
str=a;
while(*str!=’\0′)
{
if(daxie(str))
daxie1++;
else
if(xiaoxie(str))
xiaoxie1++;
else
if(space(str))
space1++;
else
if(num(str))
num1++;
else
others++;
str++;
}
printf(“大写有:%d\n小写有:%d\n空格有:%d\n数字有:%d\nothers:%d\n”,daxie1,xiaoxie1,space1,num1,others);
getch();
}
int daxie(char *str)
{
if(*str>=65&&*str<=90)
return 1;
else
return 0;
}
int xiaoxie(char *str)
{
if(*str>=97&&*str<=122)
return 1;
else
return 0;
}
int space(char *str)
{
if(*str==’ ‘)
return 1;
else
return 0;
}
int num(char *str)
{
if(*str>=48&&*str<=57)
return 1;
else
return 0;
}
谢了!!!
还是请问我的程序哪里出问题呢?是这里吗:?
while((*str++=getchar())!=’\n’);
*str=’\0′;
我觉得好象对的饿喔!?
??/大哥解答吧!!!
我没有用指针
#include”stdio.h”
main()
{char c;
int letter=0,space=0,number=0,other=0;
printf(“shu ru yi hang zi fu\n”);
c=getchar();
while(c!=’\n’)
{if(‘a’<=c&&c<=’z'||’A'<=c&&c<=’z') letter++;
else if(c==’ ‘) space++;
else if(c>=’0′&&c<=’9′) number++;
else other++;c=getchar();
}
printf(“%d%d%d%d”,letter,space,number,other);
getch();
}
你看一下
你应用getch();函数时忘记了加一个头函数#include “conio.h”了
开始时,你调用一下这个,就OK了