当前位置:首页 » 编程语言 » c语言中如何对空格计数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言中如何对空格计数

发布时间: 2022-11-26 09:44:49

1. c语言中单词统计和空格数怎么求解

循环读取字符串中的字符,字符Ascii值等于 ' ' 即为空格,一串连续的a-z和A-Z组成的字符串构成单词

2. C语言中怎么计算空格的数,说思路即可。

可以用冒泡排序法,用for循环9次,每次都判断前一个数是否大于后一个数
再交换
就是两个for的嵌套
这是思路
把8改成10
就是了

3. 用C语言写一个函数int CountSpace(char *pStr);统计字符串中空格的数目

要解决的问题主要是怎么判断字符串的结尾(空格的ASCII码直接用' '就可以了)
一般情况是使用‘\0’判断字符串结尾,但是这样的程序会有漏洞,就是对少数没有‘\0'的字符串 可能 会出错。为什么说可能呢?首先编译的时候肯定没问题,但是在内存一个一个比对字符时,因为字符串中没有’\0'所以到字符串结束时,比对还没结束,他会继续将相邻物理内存中的数据取出对比,直到遇到‘\0'为止;所以建议把函数改成int CountSpace(char *pStr,int n);n用为字符数组长度;
下面是我写的一个程序,我运行过了,可以的
#include<stdio.h>
#define LEN 20 //字符数组的长度

/*
**定义一个函数用于计算字符串空格
*/
int CountSpace(char *pstr, int n)
{
char *p_str;
int sum = 0;
int i = 0;

//遇到字符串中‘\0’或者是字符数组的结尾时退出循环,空格的ASCII是' '
for( p_str = pstr; *p_str != '\0' && i < n; p_str ++, i ++ )
if( *p_str == ' ' ) sum += 1;
printf( "%d\n", i );
return sum;

}

/*
**用函数CountSpace()求出字符串中空格的个数
*/
void
main( void )
{
char str[LEN] = "I am a good boy";
int getch();
int i;

i = CountSpace( str, LEN );//用数组名做实参
printf( "%d", i );

getch();
}
在函数中有个printf( "%d\n", i ); 那个是用来判断循环次数的,不要也可以。你要是只用一个形参,且有'\0'判断结尾,你会发现你的循环次数超出字符数组的长度!虽然结果可能相同。。
我也是刚学C语言,(一个月)有机会多交流一下

4. 输入一串字符,计算其中空格的个数,用C语言

#include <stdio.h>
#include <string.h>
int main(){
char a[999];
int i,n=0;
gets(a);
for(i=0;i<strlen(a);i++){
if(a[i]==' ')
n++;
}
printf("%d个空格",n);
return 0;
}

5. 输入一个字符串,统计出其中空格的个数 C语言

思路:统计字符串中的空格,所以该字符串中有空格,则输入只能使用gets函数,再依次遍历该字符串,判断字符是否是空格,如果是,则空格个数自加1。

参考代码:

#include<string.h>
#include<stdio.h>
#include<math.h>
intmain()
{
intsum=0,i;
chara[100];
gets(a);
for(i=0;a[i]!='';i++)
if(a[i]=='')
sum++;
printf("%d ",sum);
return0;
}
/*
输出:
afadfasfd
4
*/

6. C语言:统计字符串中空格的数量。高手看看哪错了.....

scanf()函数在遇到空字符(包括空格、TAB、回车)就会结束读取,所以不能用scanf()函数从有空字符的输入流中读取字符串到数组中。你可以使用下面的语句来读取:

7. 用c语言统计输入空格字符数字的个数

结束的回车被计算了一次,才到while那里判断并推出。
改为:
void
main()
{int
x=0,c=0,b=0,n=0,k=0;
x=getchar();
while
(x!='\n')
{
if
(48<=x&&x<=57)
c++;
else
if
(65<=x&&x<=90||97<=x&&x<=122)
k++;
else
if
(x==32)
b++;
else
n++;
x=getchar();
}
printf("共有%d个数字\n%d个字母\n%d个字符\n%d个空格",c,k,n,b);
}

8. 在C语言中如何统计一数字串空格的个数

设置计数变量
int
count
=
0;
循环遍历整个数字串
while(ch
!=
'/0')
如果查到空格则count加1
if(str[i]
==
'
')
count++;
剩下的自己思考思考呗
不然没意思了

9. C语言统计空格程序

#include <stdio.h>

#include <stdlib.h>
#include <string.h>

#define LINE 1024
int totalsum=0;
int sum1(char a[])
{

int i;

char str;

int sum=0;

for(i=0;str=a[i]!='\0'; i++){

if(a[i]==' ')

sum++;

}

printf("空格数是:%d\n",sum);

totalsum+=sum;
return 0;

}

int main()
{

FILE*fp;

char*buf;

int len;

if ((fp=fopen("C:\\a.txt","r"))==NULL)

{

printf("open file error!!\n");

return 1;

}

buf=(char*)malloc(LINE*sizeof(char));

while(fgets(buf,LINE,fp)!= NULL )
{
len = strlen(buf);

buf[len-1] = '\0';

printf("%s\n",buf);

sum1(buf);
}

printf("文件中的总空格数是:%d\n",totalsum);

system("pause");

return 0;
}