C语言中如何编写程序可以吧字母格式的电话号码转换为数值形式

 我来答
左手烟雨
推荐于2017-12-15 · TA获得超过784个赞
知道小有建树答主
回答量:446
采纳率:100%
帮助的人:248万
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void sort(char *p, char *q)
{
int i, j, len;

if ( (p[0]=='+')&&(p[1]=='8')&&(p[2]=='6') )

strcpy(q, p+3); //去掉“+86”

else if ( (p[0]=='+')&&(p[1]=='8')&&(p[2]=='8')&&(p[3]=='6') )
strcpy(q, p+4); //去掉“+886”

else

strcpy(q, p);

for (i=0; i<strlen(q); i++)

{
if (q[i]=='-') //去掉其中的"-"

{
for (j=i; j<strlen(q)-i; j++)

q[j] = q[j+1];

}
}
}

void main(void)
{
unsigned long no[500]; //默认不超过500条数据

FILE *fp;

char str1[20], str2[20];

int i = 0;

fp = fopen("phone.txt", "r");

if (NULL == fp) return; //打开文件失败
while (!feof(fp))

{
fgets(str1, 20, fp); //从文件中读一行数据,默认一行不会超过20个字符

sort(str1, str2);

no[i] = atol(str2); //将字符串转化为长整型

i++;

}
fclose(fp);

}
淡淡的死去WO
2012-12-09 · 超过45用户采纳过TA的回答
知道答主
回答量:263
采纳率:0%
帮助的人:110万
展开全部
字母格式的能给我举个例子吧
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1210586377
2012-12-08
知道答主
回答量:54
采纳率:0%
帮助的人:27.5万
展开全部
查下ASCII码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9789b5dd8
2012-12-08 · TA获得超过520个赞
知道小有建树答主
回答量:863
采纳率:0%
帮助的人:215万
展开全部
查表转换
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式