C语言:如何判断输入的是数字还是其他字符 C语言 输入一个字符,判断该字符是数字、字母、空格还是其他字...

c\u8bed\u8a00 \u5982\u4f55\u5224\u65ad\u8f93\u5165\u7684\u662f\u6570\u5b57\u8fd8\u662f\u5b57\u6bcd

\u9700\u8981\u51c6\u5907\u7684\u6750\u6599\u5206\u522b\u6709\uff1a\u7535\u8111\u3001C\u8bed\u8a00\u7f16\u8bd1\u5668\u3002
1\u3001\u9996\u5148\uff0c\u6253\u5f00C\u8bed\u8a00\u7f16\u8bd1\u5668\uff0c\u65b0\u5efa\u4e00\u4e2a\u521d\u59cb\u7684.cpp\u6587\u4ef6\uff0c\u4f8b\u5982\uff1atest.cpp\u3002

2\u3001\u5176\u6b21\uff0c\u5728test.cpp\u6587\u4ef6\u4e2d\uff0c\u8f93\u5165C\u8bed\u8a00\u4ee3\u7801\uff1achar a = getchar(); getchar();
if (a = '0') printf("\u6570\u5b57");else printf("\u5b57\u6bcd");

3\u3001\u7136\u540e\uff0c\u7f16\u8bd1\u5668\u8fd0\u884ctest.cpp\u6587\u4ef6\uff0c\u8f93\u5165\u6570\u5b57\uff0c\u6b64\u65f6\u4f1a\u6210\u529f\u5224\u65ad\u8f93\u5165\u5185\u5bb9\u4e3a\u6570\u5b57\u3002

4\u3001\u6700\u540e\uff0c\u8f93\u5165\u5b57\u6bcd\uff0c\u6b64\u65f6\u6210\u529f\u5224\u65ad\u4e86\u8f93\u5165\u5185\u5bb9\u4e3a\u5b57\u6bcd\u3002

\u4e09\u4e2a\u7a7a\u5206\u522b\u662f\uff1a
1\u3001ch >= 'a'&&ch='A'&&ch<='Z'
2\u3001 ch >= '0' && ch<='9'
3\u3001 ch == ' '
4\u3001\u5b8c\u6574\u4ee3\u7801
#include
#include int main(){ char ch;
printf("Please enter a char:");
while((ch=getchar())!=EOF) {
if(ch>='0'&&ch<='9') {
printf("%c\u662f\u6570\u5b57\u5b57\u7b26\uff1a",ch); }
else if(ch>='a'&&ch<='z') {
printf("%c\u662f\u5c0f\u5199\u5b57\u6bcd:",ch); }
else if(ch>='A'&&ch<='Z') {
printf("%c\u662f\u5927\u5199\u5b57\u6bcd:",ch); }
else if(ch==' ') {
printf("%c\u662f\u7a7a\u683c:",ch); }
else {
printf("%c\u662f\u5176\u5b83\u5b57\u7b26:",ch); }
} return 0;}

\u6269\u5c55\u8d44\u6599

C\u8bed\u8a00\u7279\u6709\u7279\u70b9
1\u3001C\u8bed\u8a00\u662f\u4e00\u4e2a\u6709\u7ed3\u6784\u5316\u7a0b\u5e8f\u8bbe\u8ba1\u3001\u5177\u6709\u53d8\u91cf\u4f5c\u7528\u57df\uff08variable scope\uff09\u4ee5\u53ca\u9012\u5f52\u529f\u80fd\u7684\u8fc7\u7a0b\u5f0f\u8bed\u8a00\u3002
2\u3001C\u8bed\u8a00\u4f20\u9012\u53c2\u6570\u5747\u662f\u4ee5\u503c\u4f20\u9012\uff08pass by value\uff09\uff0c\u53e6\u5916\u4e5f\u53ef\u4ee5\u4f20\u9012\u6307\u9488\uff08a pointer passed by value\uff09\u3002
3\u3001\u4e0d\u540c\u7684\u53d8\u91cf\u7c7b\u578b\u53ef\u4ee5\u7528\u7ed3\u6784\u4f53\uff08struct\uff09\u7ec4\u5408\u5728\u4e00\u8d77\u3002
4\u3001\u53ea\u670932\u4e2a\u4fdd\u7559\u5b57\uff08reserved keywords\uff09\uff0c\u4f7f\u53d8\u91cf\u3001\u51fd\u6570\u547d\u540d\u6709\u66f4\u591a\u5f39\u6027\u3002
\u53c2\u8003\u8d44\u6599
\u767e\u5ea6\u767e\u79d1-C\u8bed\u8a00

有很多方法:
1、可以用sacnf或gets函数直接接收输入的字符串,然后用循环遍历字符串中每一个字符,判断其是字母还是数字。
2、可以用循环调用getch()或getchar()函数来一个一个字符的接收输入,同时判读输入的是字母还是数字。
至于怎么判读是字母还是数字,很简单,假设字符c,
满足 (c>='a'&& c<='z')|| (c>='A' && c<='Z')就是字母。
满足 (c>='0' && c<='9')就是数字。

  • 濡備綍鐢C璇█鍒ゆ柇杈撳叆鐨勬槸鏁板瓧杩樻槸瀛楁瘝
    绛旓細1銆侀鍏堬紝鎵撳紑C璇█缂栬瘧鍣紝鏂板缓涓涓垵濮嬬殑.cpp鏂囦欢锛屼緥濡傦細test.cpp銆2銆佸叾娆★紝鍦╰est.cpp鏂囦欢涓紝杈撳叆C璇█浠g爜锛歝har a = getchar(); getchar();if (a <= '9' && a >= '0') printf("鏁板瓧");else printf("瀛楁瘝");3銆佺劧鍚庯紝缂栬瘧鍣ㄨ繍琛宼est.cpp鏂囦欢锛杈撳叆鏁板瓧锛屾鏃朵細鎴愬姛鍒ゆ柇杈撳叆鍐...
  • C璇█:濡備綍鍒ゆ柇杈撳叆鐨勬槸鏁板瓧杩樻槸鍏朵粬瀛楃
    绛旓細1銆佸彲浠ョ敤sacnf鎴杇ets鍑芥暟鐩存帴鎺ユ敹杈撳叆鐨勫瓧绗︿覆锛岀劧鍚庣敤寰幆閬嶅巻瀛楃涓蹭腑姣忎竴涓瓧绗︼紝鍒ゆ柇鍏舵槸瀛楁瘝杩樻槸鏁板瓧銆2銆佸彲浠ョ敤寰幆璋冪敤getch()鎴杇etchar()鍑芥暟鏉ヤ竴涓竴涓瓧绗︾殑鎺ユ敹杈撳叆锛屽悓鏃跺垽璇昏緭鍏ョ殑鏄瓧姣嶈繕鏄暟瀛椼傝嚦浜庢庝箞鍒よ鏄瓧姣嶈繕鏄暟瀛楋紝寰堢畝鍗曪紝鍋囪瀛楃c,婊¤冻 (c>='a'&& c<='z'锛墊| (c>=...
  • c璇█濡備綍鍒ゆ柇杈撳叆鏄暟瀛涓茶繕鏄瓧绗︿覆
    绛旓細b,x; int i,j; long int s; a=0.0;b=1.0;s=13579; for(i=0;i<10;i++) { for(j=0;j<5;j++) { x=uniform(a,b,&s); printf("%13.7f",x); } printf("\n"); }}double uniform(double a,double b ...
  • c璇█涓濡備綍鍒ゆ柇杈撳叆鐨勬槸瀛楃杩樻槸鏁板瓧
    绛旓細鍙互浣跨敤浠g爜杩涜鍒ゆ柇锛include<stdio.h> intmain(){ charc;while(scanf("%c",&c)!=EOF){ getchar();if(c>='0'&&c<='9')printf("%c鏄暟瀛\n",c);elseif(c>='a'&&c<='z'||c>='A'&&c<='Z')printf("%c鏄瓧姣峔n",c);elseprintf("%c鏄壒娈婂瓧绗n",c);} return0;}...
  • 濡備綍鍒ゆ柇杈撳叆鐨瀛楃鏄暟瀛,瀛楁瘝杩樻槸鍏朵粬瀛楃 C璇█
    绛旓細鐢c鍑芥暟锛 isdigit鍒ゆ柇鏄惁鏄暟瀛锛宨salpha鍒ゆ柇鏄惁涓哄瓧姣嶏紝鍦╟type.h鏂囦欢閲岄潰锛岃繕鏈夊叾浠栧垽鏂嚱鏁般
  • c璇█鎬庝箞鍒ゆ柇杈撳叆鐨勬槸鏁板瓧涓嶆槸瀛楃
    绛旓細int main(){ int c = getchar(); if(c >= '0' && c<='9') printf("%c 鏄暟瀛\n",c); else printf("%c 鏄瓧绗n",c);}
  • c璇█濡備綍鍒ゆ柇浠庨敭鐩杈撳叆鐨勬槸绗﹀彿杩樻槸鏁板瓧鍛?
    绛旓細C璇█涓紝鍙互鏍规嵁scanf()鍑芥暟鐨勮繑鍥炲硷紝鍒ゆ柇杈撳叆鐨鏁版嵁鏄惁绗﹀悎绋嬪簭瑕佹眰锛岃鍑芥暟璇存槑濡備笅锛歩nt scanf(const char *format, ...);this functions return the number of input items successfully matched and assigned, which can be fewer than provided for, or even zero in the event of an ...
  • C璇█鎬庝箞鏍规嵁ASCII鐮鍒ゆ柇杈撳叆鐨鏁版嵁鏄瓧绗︿覆杩樻槸绾鏁板瓧
    绛旓細C璇█浣跨敤鐨勮鍏ラ敭鐩杈撳叆鐨鍑芥暟杈冨父鐢ㄧ殑涓鑸湁锛歴canf fscanf sscanf getchar gets scanf銆乫scanf銆乻scanf 鏍规嵁浣犲畾涔夌殑瀛楃鏍煎紡鏉鍒ゆ柇鏄瀛楃涓茶繕鏄函鏁板瓧銆備緥濡傦細scanf("%d",a);浣跨敤浜嗘牸寮忔帶鍒%d灏辫〃绀鸿緭鍏ョ殑鍗佽繘鍒舵暣鏁帮紱scanf("%",a);鎺у埗%s灏辫〃绀鸿緭鍏ョ殑瀛楃涓层傝缁嗘牸寮忔帶鍒剁濡備笅锛歛 璇绘诞鐐瑰(浠...
  • c璇█鍒ゆ柇杈撳叆鐨勬槸鏁板瓧杩樻槸瀛楃涓
    绛旓細绾鏁板瓧姣斿32832,128.321锛屽叾浠栫殑dsajk213d閮界畻鑻辨枃銆俰nclude <string.h> void main(){ char s[20];int i=0,n;scanf("%s",s);n=strlen(s);while(s!='\0'){ if(s[i]>='0'&&s[i]<='9'||s[i]=='.')i++;else break;} if(i==n)printf("杩欐槸绾暟瀛梊n");else printf...
  • c璇█绋嬪簭杈撳叆涓涓瓧绗,娴嬭瘯鏄暟瀛,绌虹櫧杩樻槸鍏朵粬瀛楃
    绛旓細鎬濊矾锛氬鏋滄槸鏁扮粍鍒欏瓧绗>='0'&&a<='9',濡傛灉绌烘牸瀛楃a=' '銆傚弬鑰冧唬鐮侊細include <stdio.h>int main(){char a;a=getchar();if(a>='0'&&a<='9')printf("%c鏄暟瀛",a); else if(a==' ')printf("%c鏄┖鏍",a);elseprintf("%c鏄叾浠栧瓧绗",a);return 0;}/*杩愯缁撴灉锛 99鏄...
  • 扩展阅读:c语言判断是否是数字 ... c++输入 ... c判断输入是不是数字 ... c语言怎么显示数字 ... c语言判断字符是数字 ... ∧是什么运算符号 ... c语言获取输入的数字 ... c语言判断数字或字母 ... python判断输入是否为数字 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网