當前位置:首頁 » 編程語言 » 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;
}