同上,谢谢.
1、挨着判断每个字符的ASCII值是否在0~9之间。
2、例程:
#include <string.h> //strlen()需要的头文件#include<stdio.h>
//#include "stdafx.h"
#define n 100
int main(int argc, char* argv[])
{
printf("*******************第八单元 函数 判断一串字符串是否全为数字*********************");
char a[n];
int isnumber(char a[n]);
printf("请输入一串字符串:\n");
scanf("%s",a); //输入字符串,给定首地址就行,a表示字符数组首地址
isnumber( a); //实参,数组实参给首地址
printf("Hello World!\n");
return 0;
}
int isnumber(char a[n]){
int len = strlen(a);
int j =0;
for(int i =0;i<len;i++) //遍历整个字符串
{
if(a[i]<=57&&a[i]>=48) //0~9的ASCII码是48~57
{j++;} //找到数字了就数量++
}
//数字总数和字符串长度一样,则全是数字,总数为0,则都不是数字,在0~len之间则有部分是数字
if (j==len){
printf("全为数字");
}
else if(j == 0){printf("全不为数字");}
else{
printf("不全为数字");
}
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2006-07-02
#include "stdio.h"
#include "string.h"
void main()
{
char a[23]="123450";
int i=0,j;
for(j=0;j<strlen(a);j++)
{
if(!((a[j]>57)||(a[j]<49)))
i++;
}
if(i==strlen(a))
printf("yes");
else
printf("no");
}
改变下 a 的值看一下就知道了本回答被提问者采纳
#include "string.h"
void main()
{
char a[23]="123450";
int i=0,j;
for(j=0;j<strlen(a);j++)
{
if(!((a[j]>57)||(a[j]<49)))
i++;
}
if(i==strlen(a))
printf("yes");
else
printf("no");
}
改变下 a 的值看一下就知道了本回答被提问者采纳
第2个回答 2006-07-02
字符串是整数是什么意思?
第3个回答 2006-07-02
题目意思不清楚啊