萌新写题第十一天
本文仅供参考!
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);
}
运行结果
: