免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1808 | 回复: 5
打印 上一主题 下一主题

[C] 求答案(C语言) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-03-02 10:00 |只看该作者 |倒序浏览
1、编程判断输入整数的正负性和奇偶性
2、设计一个字符串拷贝函数,在主程序中实现把s1="asdf"复制到s2中

论坛徽章:
0
2 [报告]
发表于 2007-03-02 10:59 |只看该作者
有没有难点的问题呢

论坛徽章:
0
3 [报告]
发表于 2007-03-02 11:22 |只看该作者
原帖由 jinanice 于 2007-3-2 10:00 发表
1、编程判断输入整数的正负性和奇偶性
2、设计一个字符串拷贝函数,在主程序中实现把s1="asdf"复制到s2中

???????????

论坛徽章:
0
4 [报告]
发表于 2007-03-02 11:30 |只看该作者
是朋友考试的被选题目。
我不懂C语言,经常在清茶晃来着,看到有C\C++板块,过来寻求帮助来了,请朋友帮帮忙。

论坛徽章:
0
5 [报告]
发表于 2007-03-02 16:07 |只看该作者
题目的要求不明确,是不是某本 C 语言教材所附带的习题?

论坛徽章:
2
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11
6 [报告]
发表于 2007-03-02 19:50 |只看该作者

  1. #include <stdio.h>
  2. #include <assert.h>

  3. unsigned my_strlen(const char *src){
  4.         const char *tmp;

  5.         assert(src != NULL);
  6.         for(tmp = src; *tmp != '\0'; tmp++){
  7.         }
  8.         return tmp - src;
  9. }

  10. char *my_strcpy(char *tar, const char *src){
  11.         unsigned len;
  12.         int step;
  13.         char *dst;
  14.         const char *tmp;

  15.         assert(tar != NULL);
  16.         assert(src != NULL);
  17.         if(tar == src){
  18.                 return tar;
  19.         }
  20.         len = my_strlen(src);
  21.         dst = tar + len;
  22.         tmp = src + len;
  23.         step = -1;
  24.         if(tar < src || tar > tmp){
  25.                 dst = tar;
  26.                 tmp = src;
  27.                 step = 1;
  28.         }
  29.         for(; (*dst = *tmp) != '\0'; dst += step, tmp += step){
  30.         }
  31.         return tar;
  32. }

  33. int main(void){
  34.         int num;
  35.         static char src[] = "This is a test string.";
  36.         char dst[sizeof(src) + 1];

  37.         printf("Please input a number: ");
  38.         scanf("%d", &num);
  39.         if(num < 0){
  40.                 printf("%d is a negative %s number\n", num
  41.                         , (num & 1) == 1 ? "odd" : "even");
  42.         }else if (num > 0){
  43.                 printf("%d is a positive %s number\n", num
  44.                         , (num & 1) == 1 ? "odd" : "even");
  45.         }else{
  46.                 printf("%d is zero\n", num);
  47.         }
  48.         printf("Source String: %s\n", src);
  49.         printf("Target String: %s\n", my_strcpy(dst, src));
  50.         return 0;
  51. }
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP