Ⅰ c語言輸入一行字元串,如何統計其中的字母和數字的個數
要統計英文字母,空格,數字和其他字元的個數,代碼如下:
#include<stdio.h>
#include<stdlib.h>
int main()
{
char c;
int letters=0;
int space=0;
int digit=0;
int other=0;
printf("請輸入一行字元:>");
while((c=getchar())!=' ')
{
if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))
{
letters++;
}
else if(''==c)
{
space++;
}
else if(c>='0'&&c<='9')
{
digit++;
}
else
{
other++;
}
}
printf("字母的個數:>%d 空格的個數:>%d
數字的個數:>%d 其他字元的個數:>%d ",
letters,space,digit,other);
system("pause");
return 0;
}
(1)c語言如何對輸入的行和字元計數擴展閱讀:
include用法:
#include命令預處理命令的一種,預處理命令可以將別的源代碼內容插入到所指定的位置;可以標識出只有在特定條件下才會被編譯的某一段程序代碼;可以定義類似標識符功能的宏,在編譯時,預處理器會用別的文本取代該宏。
插入頭文件的內容
#include命令告訴預處理器將指定頭文件的內容插入到預處理器命令的相應位置。有兩種方式可以指定插入頭文件:
1、#include<文件名>
2、#include"文件名"
如果需要包含標准庫頭文件或者實現版本所提供的頭文件,應該使用第一種格式。如下例所示:
#include<math.h>//一些數學函數的原型,以及相關的類型和宏
如果需要包含針對程序所開發的源文件,則應該使用第二種格式。
採用#include命令所插入的文件,通常文件擴展名是.h,文件包括函數原型、宏定義和類型定義。只要使用#include命令,這些定義就可被任何源文件使用。如下例所示:
#include"myproject.h"//用在當前項目中的函數原型、類型定義和宏
你可以在#include命令中使用宏。如果使用宏,該宏的取代結果必須確保生成正確的#include命令。例1展示了這樣的#include命令。
【例1】在#include命令中的宏
#ifdef _DEBUG_
#define MY_HEADER"myProject_dbg.h"
#else
#define MY_HEADER"myProject.h"
#endif
#include MY_HEADER
當上述程序代碼進入預處理時,如果_DEBUG_宏已被定義,那麼預處理器會插入myProject_dbg.h的內容;如果還沒定義,則插入myProject.h的內容。
Ⅱ 在C語言里怎樣輸入一行字元,統計其中有多少個單詞
#include
#include
void
main()
{
int
i,n,sum=0;
char
a[100];//根據字串的長度適當調整
printf("請輸入一組字元:");
gets(a);
n=strlen(a);
for(i=0;i<=n-2;i++)
{
if((65<=a[i]&&a[i]<=90)||(97<=a[i]&&a[i]<=122))
sum++;
}
printf("字元的個數為:%d\n",sum);
}
經過在vc++6.0上調試,沒有問題,不知道是不是你想要的這種
Ⅲ C語言編寫程序統計輸入的行數
循環讀入字元,遇到 累計行數,最終輸出累計值即可。
以EOF作為終止條件的代碼如下:
#include<stdio.h>
intmain()
{
intcnt=1;//最少會輸出一行,每遇到一個換行,表示多輸入了一行。
intc;
while((c=getchar())!=EOF)
{
if(c==' ')cnt++;//統計行數。
}
printf("%d ",cnt);
return0;
}
Ⅳ C語言題目輸入一行字元,分別統計出其中英文字母,空格,數字和其他字元的個數。
錯誤代碼:
if('a'<=nextchar<='z'||'A'<=nextchar<='Z')
else if('0'<=nextchar<='9')
修改後:
#include <stdio.h>
int main()
{
int letter=0,space=0,number=0,others=0;
char nextchar;
printf("Input your string ");
for(;nextchar!=' ';)
{
scanf("%c",&nextchar);
if('a'<=nextchar&&nextchar<='z'||'A'<=nextchar&&nextchar<='Z')
letter++;
else if(nextchar==' ')
space++;
else if('0'<=nextchar&&nextchar<='9')
number++;
else
others++;
}
printf("letter=%d,space=%d,number=%d,others=%d ",letter,space,number,others);
}
(4)c語言如何對輸入的行和字元計數擴展閱讀
c++輸入一行字元,分別統計出其中英文字母、空格、數字和其他字元的個數。
#include<cstdio>
int main()
{
char x[999];
int i,a=0,b=0,c=0,d=0;
gets(x);
for(i=0;i<=x[i];i++)
{
if('A'<=x[i]&&x[i]<='z')
a++;
else if('0'<=x[i]&&x[i]<='9')
b++;
else if(x[i]==' ')
c++;
else
d++;
}
printf("%d %d %d %d ",a,b,c,d);
return 0;
}
Ⅳ C語言 輸入一行字元串,統計字母,數字和其它符號的個數
可以參考下面的代碼:
#include<stdio.h>
int main()
{char s[200];
int i,zm=0,sz=0,qt=0;
for(i=0;s[i];i++)
if(s[i]>='A'&&s[i]<='Z'||s[i]>='a'&&s[i]<='z')zm++;
else if(s[i]>='0'&&s[i]<='9')sz++;
else qt++;
printf("zm=%d, sz=%d, qt=%d ",zm,sz,qt);
return 0;
}
(5)c語言如何對輸入的行和字元計數擴展閱讀:
1、for循環小括弧里第一個「;」號前為一個為不參與循環的單次表達式,其可作為某一變數的初始化賦值語句, 用來給循環控制變數賦初值; 也可用來計算其它與for循環無關但先於循環部分處理的一個表達式。
「;」號之間的條件表達式是一個關系表達式,其為循環的正式開端,當條件表達式成立時執行中間循環體。
2、IF語句三種形式
if(表達式)語句
if(表達式)語句1else語句2
if(表達式1)語句1
嵌套
在if語句中又包含一個或多個if語句稱為if語句的嵌套
Ⅵ c語言輸入一段話如何輸出行數字數詞數
演算法很簡單,行數用 計數;字數應該是指字元數,就是字元串的長度;單詞數用空格符,跳格符,換行符來分隔計算。
C語言統計控制台輸入的行數,單詞數與字元數:
#include<stdio.h>
#defineIN1//在單詞內
#defineOUT0//在單詞外
/**
*統計輸入的行數,單詞數與字元數
*/
intmain(){
//c:每次讀的支付,nl:行數,nw:單詞數,nc:字元數,state:標示狀態
intc,nl,nw,nc,state;
state=OUT;
nl=nw=nc=0;
while((c=getchar())!=EOF){
++nc;
if(c==' '){
++nl;
}
if(c==''||c==' '||c==' '){
state=OUT;
}elseif(state==OUT){
state=IN;
++nw;
}
}
printf("%d%d%d",nl,nw,nc);
return0;
}
Ⅶ c語言 從鍵盤輸入一行字元,分別統計其中數字字元,字母字元和其他字元的個數
可以參考下面的代碼:
#include <stdio.h>
intmain()
{
inta,b,c,ch;
a=b=c=0;//計數器初始化為0.
while((ch=getchar())!=' ')//循環讀取字元,到換行結束。
{
if(ch>='0' && ch<='9')//數字
a++;
else if((ch>='a' && ch<='z')||(ch>='A' && ch<='Z'))//字母
b++;
else//其它
c++;
}
printf("%d%d%d ",a,b,c);//輸出結果。
return0;
}
(7)c語言如何對輸入的行和字元計數擴展閱讀:
printf()函數函數
printf()函數是格式化輸出函數, 一般用於向標准輸出設備按規定格式輸出信息。在編寫程序時經常會用到此函數。函數的原型為:
int printf(const char *format, ...);
函數返回值為整型。若成功則返回輸出的字元數,輸出出錯則返回負值,printf()函數的調用格式為:
printf("<格式化字元串>", <參量表>);
while語句的一般表達式為:while(表達式){循環體}。
Ⅷ C語言:輸入一行字元,統計出其中數字字元的個數
#include <stdio.h>
int main()
{
int i,n=0;
char s[256];
fgets(s,256,stdin);
for(i=0;s[i];i++)
if(s[i]>='0'&&s[i]<='9')
n++;
printf("%d",n);
return 0;
}
Ⅸ C語言編程! 編寫程序,計算輸入的數字、字母和其他字元的個數。
在ascII表中鍵盤可輸入字元是連續的,不包括空格是從33到126,所以可以定義一個128的數組,做個簡單hash,輸入的字元作hash
key。實現如下:
#include
<stdio.h>
int
main()
{
char
a[1024]
=
{0};
/*接收輸入的字元,由於gets不檢查長度,所以弄大點*/
int
hash_tbl[128]
=
{0};/*hash
表*/
int
i;
printf("Please
input
string:\
");
gets(a);/*從標准輸入讀字元*/
for(i=0;
a[i]!='\\0';
i++)
{
hash_tbl[(int)a[i]]++;/*計算輸入字元的個數*/
}
/*列印非零字元的個數*/
for(i=33;
i<126;
i++)
{
if
(hash_tbl[i]>0)
{
printf("%c
num
is:
%d\
",
i,
hash_tbl[i]);
}
}
return
0;
}