| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 826 人关注过本帖
标题:自己些个函数,加个判断。可他不理我
只看楼主 加入收藏
gufei1122
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-3-1
收藏
 问题点数:0 回复次数:10 
自己些个函数,加个判断。可他不理我

这是一个程序段主要是一个注册的函数,我在机器上编译,没提示错误,可是一运行就不行在用户上家

了个为数和组成的判断可判断不管用,那位帮我看看啊!

#include <stdio.h>
#include <string.h>

struct pim //定义结构体个人信息
{
char name[10];
char passwd[20] ;
char passwd1[20] ;

};

struct pim x;

void zhuce()
{
int y=0,z=0;

printf("请输入要注册的用户名:(长度为10以内,由数字或密码字母组成)\n");
while(z==0)
{

scanf("%s",&x.name);
if(strlen(x.name)>10)
{
printf("您输入的名字太长,请重新输入:");
z=0;
}
else
{
for(int i=0;i<strlen(x.name);i++)
{
if((x.name[i] >= '0' && x.name[i] <= '9')||(x.name[i] >= 'a' &&
x.name[i]<='z')||(x.name[i]>='A' && x.name[i]<='Z'))
{
printf("您输入的用户名符合要求为:%s",x.name);
}
else
printf("用户名错误,重写");
}
}
}
}

[此贴子已经被作者于2007-5-9 21:06:05编辑过]

搜索更多相关主题的帖子: 函数 注册 include 个人信息 结构体 
2007-05-09 20:44
love52657
Rank: 1
等 级:新手上路
帖 子:75
专家分:0
注 册:2007-5-4
收藏
得分:0 
主函数没有 调用子程序的语句又 没有
你写的是不是C啊?????

我 为 C 狂
2007-05-09 20:50
gufei1122
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-3-1
收藏
得分:0 
这是一个程序段主要是一个注册的函数
看好是一个程序段。。。。。
2007-05-09 21:08
Javal
Rank: 1
等 级:新手上路
威 望:1
帖 子:108
专家分:0
注 册:2006-5-7
收藏
得分:0 
printf("您输入的用户名符合要求为:%s",x.name);

每判断一个字符为合法上面的语句就要执行一次,应该改为判断完之后名字为合法才打印

还有你的循环控制条件不好

猝然临之而不惊,无故加之而不怒 /?spaced" target="_blank">Linux C资料
2007-05-10 11:25
忧郁的风
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2004-11-1
收藏
得分:0 
else
{
for(int i=0;i<strlen(x.name);i++)
{
if((x.name[i] >= '0' && x.name[i] <= '9')||(x.name[i] >= 'a' &&
x.name[i]<='z')||(x.name[i]>='A' && x.name[i]<='Z'))
{
printf("您输入的用户名符合要求为:%s",x.name);
}
else
printf("用户名错误,重写");
}
}
改为:
else
{ int i;
for(i=0;i<strlen(x.name);i++)
{
if((x.name[i] <'0' && x.name[i] > '9')&&(x.name[i] > 'a' &&
x.name[i]>'z')&&(x.name[i]<'A' && x.name[i]>'Z'))
{ /*若输入的字符不在0-9、a-z、A-Z之间,则退出循环,重新输入*/
printf("用户名错误,重写");
break;
}

}
if(i>=strlen(x.name))
{
printf("您输入的用户名符合要求为:%s",x.name);
z=1; /*中止while循环*/
}
}
还有:将
if(strlen(x.name)>10)
{
printf("您输入的名字太长,请重新输入:");
z=0;
}
中的z=0改为continue应该会比较好吧,或者是直接去掉.

轻轻的我走了,正如我轻轻的来,轻轻的我挥一挥衣袖,轻轻的抹去我留下的痕迹------风过无痕
2007-05-10 11:47
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
scanf("%s",&x.name);

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2007-05-10 12:31
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
以下是引用Knocker在2007-5-10 12:31:34的发言:
scanf("%s",&x.name);

你似乎活得还很好


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2007-05-10 12:33
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
反正死不了

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2007-05-10 13:52
gufei1122
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-3-1
收藏
得分:0 
4楼5楼的谢了
2007-05-10 15:17
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
以下是引用gufei1122在2007-5-10 15:17:25的发言:
4楼5楼的谢了

孺子不可教也


九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2007-05-10 15:43
快速回复:自己些个函数,加个判断。可他不理我
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016403 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved