萌新写题第十一天

本文仅供参考!

1、输入一个整形数,实现其转换成字符串,并将其存放到指针指向的数组中

代码:

 

#include<stdio.h>

 

int main()

{

       int n, i, j;

       char m[100], *ptr = m;

       char a, b;

       printf("请输入:");

       scanf("%d", &n);

       *(ptr + i) = n;

       printf("字符串:%c", *ptr);

       printf("\n");

}

运行结果:

2、 输入一个(只包含数字,若包含其他字符则提示错误并重新输入)字符串, 实现将其转换成整形数,并用%d格式符输出

代码:

#include<stdio.h>

#include<string.h>

int main()

{

       char a[100], *ptr = a;

       int m, i;

 

       printf("请输入字符串:");

       scanf("%s", ptr);

       m = strlen(a);

       for(i = 0; i < m; i++)

         printf("%d,", *(ptr + i));

       printf("\n");

}

运行结果:

3、  输入个整形数组,用指针实现求数组中所有奇数和与偶数和并打印

代码:

#include <stdio.h>

 

int main()

{

       int a[100], sum = 0, sum1 = 0, n, i, *ptr = a;

       printf("请输入整形个数:");

       scanf("%d", &n);

       printf("请输入整形数:");

       for(i = 0; i < n; i++)

       {

           scanf("%d", ptr+i);

       }

       for(i = 0; i < n; i++)

       {

              if(0 == *(ptr + i)%2)

                sum += *(ptr + i);

              else if(1 == *(ptr + i)%2)

                sum1 += *(ptr + i);

       }

printf("偶数和:%d\n", sum);

       printf("奇数和:%d\n", sum1);

}

运行结果:

 

4、 有一只猫有一个怪毛病喜欢将捉来的老鼠排队,然后从第一个开始吃掉然后隔一只老鼠再吃下一只,一直到队尾,然后再从队首依然是隔一只吃老鼠,最后剩下一只老鼠放生。编程实现输入老鼠的数量,输出其原来队中第几只老鼠被放生

代码:

 

#include<stdio.h>

 

int main()

{

       int n, m, i, j;

       printf("请输入老鼠的数量:");

       scanf("%d", &n);

       m = n;

       int a[n], *ptr = a;

       int b[n], *pre = b;

       for(i = 0; i < n; i++)

              *(ptr + i) = i;

       for(i = 0; i < n; i++)

           printf(" %d ", *(ptr + i));

       printf("\n");

       int l = 0, p;

       for(i = 0; i < n; i++)

       {

         if(1 == l)

              break;

         else

              {

              if(-1 != *(ptr + i))

              for(j = i; j <= n; j += 2)

                     {

                   for(int h = 0; h < n; h++)

                            if(-1 != *(ptr + h))

                              l++;

                   if(1 == l)

                            break;

                     l = 0;

                     //-1表示老鼠已经被吃掉

                      *(ptr + j) = -1;

                     }

              }

       }

       for(i = 0; i < m; i++)

           printf(" %d ", *(ptr + i));

       printf("\n");

       for(i = 0; i < m; i++)

         if(-1 != *(ptr + i))

              printf("原来队中第%d只老鼠被放生。\n", *(ptr + i) + 1);

}

运行结果

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值