| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1092 人关注过本帖
标题:[求助]这2题指针的意思都搞不懂呀
只看楼主 加入收藏
kingyupeng
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-2-28
收藏
 问题点数:0 回复次数:18 
[求助]这2题指针的意思都搞不懂呀

编写一个程序,接受一个字符串并检查它是否是回文


使用指向字符串的指针编写一个程序,接受一个动物及一只鸟的名字,并返回名字的复数形式







什么意思啊

搜索更多相关主题的帖子: 指针 
2006-03-14 22:54
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 

第一题

#include <stdio.h>
#include <conio.h>
#define M 20
void main()
{
char str[M];
char *p,*q;

gets(str);
q=str+strlen(str)-1; /* q 指向最后一个字符~非结束标志*/
p=str; /* p 指向第一个字符*/
while((*p++==*q--)&&(q>=p));
printf("%s\n",(q<p)?"Yes.":"No.");
getch();
}

第二题~ 自己查写 单数变复数的规则 自己写

[此贴子已经被作者于2006-3-14 23:09:11编辑过]


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-14 23:08
kingyupeng
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-2-28
收藏
得分:0 
第二题的复数形式 是什么意思呀 我就题目意思搞不懂呀 不是要源码 只想知道思路

2006-03-14 23:11
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 

例如 你输入一个"dog" 它的复数末尾加s 嘛 所以你输出"dogs"

如果是"box" 输出"boxes"

有很多规则 你自己去查下吧,主要判断单词的末尾满足什么规则


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-14 23:15
kingyupeng
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-2-28
收藏
得分:0 
麻烦解释下这句好吗 printf("%s\n",(q&lt;p)?"Yes.":"No.");  怎么能2句写到一起的  

2006-03-14 23:21
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
(q&lt;p)?"Yes.":"No."   如果p&lt;q 成立 这个表达式取"Yes."  如果不成立 取"No."   这是条件表达式嘛  

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-14 23:24
kingyupeng
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-2-28
收藏
得分:0 
#include<stdio.h>
#include<string.h>
#define M 20
void main()
{
char s[M];
char *p,*q;
int i;
printf("请输入字符串\n");
scanf("%s",s);
q=s+strlen(s)-1; // q 指向最后一个字符
p=s; // p 指向第一个字符
for(i=0;i<strlen(s);i++,p++,q--)
*q=*p;

if(*q==*p)
printf("%s是回文\n\n",s);
else
printf("%s不是回文\n\n",s);
}


我输入aabba 他会显示aabaa是回文 怎么会改我输入的字符串

2006-03-14 23:41
kingyupeng
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-2-28
收藏
得分:0 
还有第2题   怎么样把指针指向  用户随意输入的最后的字符  就向上面吗  求他的字符长度减去1吗

[此贴子已经被作者于2006-3-14 23:44:43编辑过]



2006-03-14 23:44
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
以下是引用kingyupeng在2006-3-14 23:41:00的发言:
#include<stdio.h>
#include<string.h>
#define M 20
void main()
{
char s[M];
char *p,*q;
int i;
printf("请输入字符串\n");
scanf("%s",s); /* 你这个不能录入空格*/
q=s+strlen(s)-1; // q 指向最后一个字符
p=s; // p 指向第一个字符
for(i=0;i<strlen(s);i++,p++,q--)
*q=*p; /*写在这里变成赋值了,我是写在条件判断的位置,能一样吗?*/

if(*q==*p)
printf("%s是回文\n\n",s);
else
printf("%s不是回文\n\n",s);
}


我输入aabba 他会显示aabaa是回文 怎么会改我输入的字符串


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-14 23:48
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
以下是引用kingyupeng在2006-3-14 23:44:00的发言:
还有第2题 怎么样把指针指向 用户随意输入的最后的字符 就向上面吗 求他的字符长度减去1吗

对~ 做第二题,不过你判断最后一个字符不够,得判断最后两个字符,具体看规则


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-14 23:50
快速回复:[求助]这2题指针的意思都搞不懂呀
数据加载中...
 
   



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

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